mysql - 当且仅当在同一天发布时,将行显示在彼此之上
问题描述
我有桌子
+---------------------+-------+
| date_in | title |
+---------------------+-------+
| 2018-01-01 00:00:00 | foo2 |
| 2018-01-02 00:00:00 | bar |
| 2018-01-03 00:00:00 | man |
| 2018-01-04 01:00:00 | foo2 |
| 2018-01-04 02:00:00 | foo |
| 2018-01-04 03:00:00 | foo1 |
| 2018-01-04 04:00:00 | foo2 |
| 2018-01-05 00:00:00 | test |
+---------------------+-------+
我想要的结果是
+---------------------+-------+
| date_in | title |
+---------------------+-------+
| 2018-01-05 00:00:00 | test |
| 2018-01-04 04:00:00 | foo2 | -- see this
| 2018-01-04 01:00:00 | foo2 | -- see this
| 2018-01-04 03:00:00 | foo1 |
| 2018-01-04 02:00:00 | foo |
| 2018-01-03 00:00:00 | man |
| 2018-01-02 00:00:00 | bar |
| 2018-01-01 00:00:00 | foo2 |
+---------------------+-------+
我尝试了以下查询和其他几个查询,但它不起作用
SELECT
detail.*
FROM
test detail
JOIN ( SELECT min( date_in ) firstdate, title FROM test GROUP BY title ) firstdate ON detail.title = firstdate.title
ORDER BY
firstdate.firstdate,
detail.title,
detail.date_in
但是此查询显示彼此顶部具有相同标题的行,无论日期如何
我希望行仅在同一天时才显示在彼此之上
这里http://sqlfiddle.com/#!9/039aa/6带有架构的 SQLFiddle。
解决方案
似乎您需要按日期(date_in)和标题 desc 排序
SELECT
detail.*
FROM test detail
ORDER BY
date(detail.date_in),
detail.title desc,
detail.date_in
推荐阅读
- amazon-web-services - 如何通过 aws 将我自己的域重定向到 notion.so 页面?
- reactjs - MobxStateTree 没有 useState?
- swift - Swift 组合框架中的“展开”
- ios - 将框架添加到项目和另一个框架
- rest - 使用 Postman 设置访问令牌
- java - Android NDK - 从 C 代码填充 Java 的字节数组
- azure - 如何限制 edgeAgent 容器的内存和 CPU 使用率
- react-native - 将信息发送到 React-native 上的选项卡
- python - 库安装 Python + Spyder
- json - 使用 Serde 反序列化跳过序列中的无效元素