我有一个android sqllite数据库。它有一个名为chainid的文本列。
我希望返回具有不同的chainid ||或其中chainid等于"none“的行中的所有列。
因此,例如:
ID|名称| chainid
1| widgetname1 | 12345
2| widgetname2 | 12345
3| widgetname3 |“无”
4| widgetname4 | 49390
5| widgetname5 | 49390
根据上表,我希望我的查询返回3行,其中包含第2行、row3和row5的所有列。-- So DISTINCT on chainid where chainid = "none“,并将最大id选作distinct行
我可以在一个查询中实现这一点吗?
我可以在java中返回所有内容,然后再进行处理,但这样效率很低。
发布于 2013-03-23 19:39:48
关于
select *
from table where id in
( select max(id)
  from table
  group by chainid
  where chainid != 'none'
  union
  select id
  from table
  where chainid = 'none'
)https://stackoverflow.com/questions/15586144
复制相似问题