我有兩個表objectTable
和photo_table
。這裏從objectTable
SQLite內部連接限制1
ID TEXT
1 Kaunas
2 Vilnius
3 Palanga
4 Prienai
的樣本數據,在這裏從photo_table
OBJECT_ID PHOTO_ID NAME
1 7 tets7.jpg
1 8 tets8.jpg
1 9 tets9.jpg
1 10 tets10.jpg
1 11 tets11.jpg
2 3 tets3.jpg
2 2 tets2.jpg
3 1 tets1.jpg
3 5 tets5.jpg
4 6 tets6.jpg
4 7 tets7.jpg
4 8 tets8.jpg
所以數據,你可以看到一個對象可以有很多pictuure。我需要得到evety對象的第一張圖片(我的輸出應該是)
ID TEXT NAME
1 Kaunas tets7.jpg
2 Vilnius tets3.jpg
3 Palanga tets1.jpg
4 Prienai tets6.jpg
這是我的查詢:
select *
from objectTable
inner join photo_table
on photo_table.OBJECT_ID = (select OBJECT_ID
from photo_table
where photo_table.OBJECT_ID = objectTable.ID
order by photo_table.OBJECT_ID desc
limit 1).
不過我揣摩幾乎3小時爲什麼這個查詢不工作。我錯過了什麼?我的邏輯正確嗎?
您的樣本輸出沒有意義的照片。你說你想要得到每一個物體的第一張照片,但是什麼使得照片「首先?」對於樣本輸出中的第二個結果,照片必須按照與按升序排序的其他照片相反的順序排序。你確定'tets3.jpg'不應該是'tets2.jpg'嗎? – ghenghy