Имам таблица с изображения и таблица с местоположения. Искам да извлека списък с изображения, които са най-новите изображения за всяко местоположение в определени граници.
SELECT * FROM images
WHERE location_id IN
(SELECT id FROM locations
WHERE latitude > 17.954 AND latitude < 52.574
AND longitude > -107.392 AND longitude < -64.853)
Това е с вложена заявка, но можем да постигнем същото с присъединяване. Това работи, ако искаме всички изображения за всяко местоположение, но бих искал да получа само 1 изображение на местоположение (най-новото)
Ето основните полета на тези таблици
table "images"
integer "id"
text "image_name"
text "caption"
integer "location_id"
datetime "created_at"
datetime "updated_at"
integer "view_count"
table "locations"
integer "id"
text "name"
float "longitude"
float "latitude"
datetime "created_at"
datetime "updated_at"
string "city"
string "address"
string "province"
string "country"
string "post_code"
някаква идея?
Бонус точки, ако има начин да направите това с помощта на rails activerecord API
EXISTS
не би работил тук. Той получава комплект документи за самоличност - person Matthew   schedule 17.02.2011