2013-07-11 96 views
0

我已經搜索並嘗試了很多,但無法得到任何答案。我需要一個像從不同行中選擇不同的列

ID  Name  Address  Phone 
1    yyyy  zzz 
1  aaa  bbbb  ccc 

爲表一個SQLite查詢查詢應返回像

1  aaa  yyyy  zzz 

結果所以從第一個記錄第二個非空的記錄,地址和電話的域名(第一條記錄可以爲空也可能不存在事件)。

在此先感謝。

+0

如何是錄音功ds有序? (他們有相同的ID。) –

+0

表中的行沒有順序(技術上他們有,但這個順序是隨意的,甚至可能隨時間而改變)。您必須通過提供排序行標準來關心自己的排序。 –

+0

是的,你可以考慮相同的ID。我想要條件爲'... where ID = 1'的查詢 – Ashishail

回答

0

好的,我自己做了查詢。假設下面是測試表

ID  Name  Address  Phone 
1    yyyy  zzz 
1  aaa  bbbb  ccc 
2  rrrr    

所以下面

SELECT b.name,a.address, a.phone from test a 
    join (select id,name,address from test where id=1) b on a.id = b.id 
    where b.name is not null and (a.address is null or a.address!=b.address) 

查詢會給'aaa','yyyy','zzz'

SELECT b.name,a.address, a.phone from test a 
    join (select id,name,address from test where id=2) b on a.id = b.id 
    where b.name is not null and (a.address is null or a.address!=b.address) 

會給'rrrr',,