我有一个表,其中的值如下:
row item_id device_token
1 1 1234
2 2 2345
3 1
4 2
5 1
6 1 1234
字符串
我想选择所有值,但按item_id和device_token分组。
SELECT item_id,device_token FROM命中GROUP BY item_id,device_token
如果上面的数据将导致4行,因为行1,6和3,5将被合并。我可以进行一个查询,不对device_token为空/null的行(行3和5)进行分组吗?
4条答案
按热度按时间vojdkbi01#
如果你不想要device_token为空的行,这很容易--只要像其他人建议的那样使用一个简单的
WHERE
子句。如果您希望将具有匹配device_token的查询和不具有设备令牌的查询都分组为单行,则可以使用
UNION
将合并组合两个查询:字符串
o4tp2gmn2#
只需添加
WHERE
子句:字符串
bwitn5fc3#
您不需要对它们进行分组,只需执行
SELECT DISTINCT
。如下所示:字符串
是否要显示空字段?
是否存在可能需要分组的其他聚合字段?
请详细说明-可能这不是您所需要的。
du7egjpx4#
如果你真的想要这个,并下令,尝试这样的东西。
字符串