Sqlite 从不同的行中选择不同的列

Sqlite 从不同的行中选择不同的列,sqlite,Sqlite,我找了很多,也试了很多,但都找不到答案。我需要一个sqlite查询表,如 ID Name Address Phone 1 yyyy zzz 1 aaa bbbb ccc 查询应返回如下结果 1 aaa yyyy zzz 所以,第二条非空记录中的姓名和第一条记录中的地址和电话(第一条记录也可以是空的,或者它可能不存在) 提前谢谢。好的,我自己问的。假设下面是测试

我找了很多,也试了很多,但都找不到答案。我需要一个sqlite查询表,如

ID     Name     Address     Phone
1               yyyy        zzz
1      aaa      bbbb        ccc
查询应返回如下结果

1      aaa      yyyy        zzz
所以,第二条非空记录中的姓名和第一条记录中的地址和电话(第一条记录也可以是空的,或者它可能不存在)


提前谢谢。

好的,我自己问的。假设下面是测试表

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”


将给出
'rrrrr',

记录是如何排序的?(它们具有相同的ID。)表中的行没有顺序(从技术上讲,它们有顺序,但这种顺序是任意的,甚至可能随时间而改变)。您必须关心通过为排序行提供标准来排序自己。是的,您可以考虑相同的ID。我希望使用子句<代码>…ID为1 < /代码>的查询。
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)