sql - 如何只获取每天的第一条记录?
问题描述
如何只获取每天的第一条记录?
id | name | date
1 | aaa | 2018-05-10
2 | bbb | 2018-05-10
3 | ccc | 2018-05-10
4 | ddd | 2018-05-11
5 | eee | 2018-05-11
6 | fff | 2018-05-13
我想收到:
1 | aaa | 2018-05-10
4 | ddd | 2018-05-11
6 | fff | 2018-05-13
解决方案
对于 Postgres,有一个更有效的解决方案:
select distinct on (id) id, name, date
from the_table
order by id, date;
推荐阅读
- c++ - 将索引存储在向量中
> 与向量 > - java - Android:如何确定屏幕上 ImageView 的大小(以英寸为单位)
- jquery - 在滚动时显示左下固定弹出窗口
- c# - 如何设置传递给另一个类的类的属性值?
- python-3.x - 如何使用 python 3.5 修复 sqlite3 中的“OperationalError: near 'n': syntax error”语法错误
- javascript - 我应该多次运行 Google Closure Compiler 以进一步优化我的代码吗?
- performance - Chrome 开发者工具:帧捕获中的黑色竖条代表什么?
- java - 获取for循环android内部多个位置的天气状态
- kotlin - 为什么密封类的私有构造函数可以在子类中调用?
- python - 文件中的字数:打开文件有问题,还是我编码不正确?