最近我发现SQLite不支持DISTINCT ON()看似postgresql特定的子句.对于exeample,如果我有表t的列a和b.我想选择所有不同的项目b.以下查询是SQLite中唯一一个正确的方法吗?
select * from t where b in (select distinct b from t)
Run Code Online (Sandbox Code Playgroud)
样本数据:
a | b
__|__
1 5
2 5
3 6
4 6
Run Code Online (Sandbox Code Playgroud)
我期待的回报:
a | b
__|__
1 5
3 6
Run Code Online (Sandbox Code Playgroud)
小智 11
sqlite> SELECT * FROM t GROUP BY b; 2|5 4|6 (for each b: one (unpredictable) value of a) sqlite> SELECT * FROM (SELECT * FROM t ORDER BY a DESC) GROUP BY b; 1|5 3|6 (for each b: the row with min a) sqlite> SELECT * FROM (SELECT * FROM t ORDER BY a ASC) GROUP BY b; 2|5 4|6 (for each b: the row with max a)
| 归档时间: |
|
| 查看次数: |
13961 次 |
| 最近记录: |