SQL:如何为每个具有现有值的用户获取包含单个记录的结果集
这个问题可能会产生误导,我可以在这里解释这个问题:SQL:如何为每个具有现有值的用户获取包含单个记录的结果集,sql,resultset,Sql,Resultset,这个问题可能会产生误导,我可以在这里解释这个问题: userId col1 col2 001 null null 001 1 null 002 1 1 002 null 1 002 null null 003 null 1 003 1 null 查询的最终结果 001 1 null 002 1 1 003 1 1 我在一个表中
userId col1 col2
001 null null
001 1 null
002 1 1
002 null 1
002 null null
003 null 1
003 1 null
查询的最终结果
001 1 null
002 1 1
003 1 1
我在一个表中为用户保留了多条记录。有些列包含值,有些列不包含值。我想要上面显示的最终结果。如果某个用户的任何行中的任何列都存在一个值,我希望该值出现在最终结果集中
我希望上面的例子能清楚地说明这一点。使用group by AGGRATION with max:
select userId, max(col1) as c1, max(col2) as c2
from userTbl
group by userId
工作。谢谢我有一些字母数字值,但从来没有想过我可以使用MAX()乐趣。