[英]How to join two tables in sqlite android?
我有兩個表,一個在旅行,另一個在這兩個表中被調用,我有一個基於該ID的公共字段事件ID,需要獲取兩個表值,我該怎么做。 現在讓我詳細解釋我的問題
這是我的旅行表:
ID INCIDENT_ID Lat Long Time
-- ----------- --- ---- -----
1 2 13.2 13.5 13456
這是我的通話表:
ID INCIDENT_ID DESC START END
-- ----------- ---- ----- ---
1 2 test 23 33
現在到目前為止,如何連接這兩個表是我嘗試過的查詢:
String visitquery = "SELECT " + VisitModel.INCIDENT_ID + "," + VisitModel.DESC + " ," + VisitModel.Visit_START + " ," + VisitModel.Visit_END + " , "+ VisitModel.Visit_TRAVELAT + " , " + VisitModel.Visit_TRAVEL_LONG + " FROM " + VisitModel.CALL_TABLE + " LEFT OUTTER JOIN " + VisitModel.Visit_TravelTable
+ " ON " + VisitModel.Visit_IncidentID + " = " + VisitModel.Visit_TravelIncidentID
+ " WHERE " + VisitModel.Visit_IncidentID + " = " + id;
沒有從旅行表中獲取結果如何實現這一點還有其他方法。
VisitModel.Visit_IncidentID和VisitModel.Visit_TravelIncidentID的字符串值是什么?
請注意,兩個表中的列名相同。 打印此查詢並檢查是否沒有類似的內容
...ON INCIDENT_ID = INCIDENT_ID ...
更新
如果需要所有字段,請嘗試使用此查詢,
"SELECT * FROM travel JOIN call ON travel.ID= call.ID"
如果您需要特定的列
"SELECT travel.Lat,call.START FROM travel JOIN call ON travel.ID= call.ID"
如果您需要ID
"SELECT travel.Lat,call.START FROM travel JOIN call ON travel.ID= call.ID WHERE travel.ID='"+id_value+"'";
例
"SELECT travel.Lat,call.START FROM travel JOIN call ON travel.ID= call.ID WHERE travel.ID='12345'";
這將可以正常工作。travel和call是兩個不同的表名稱*。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.