- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
我的查询排序时遇到一些问题。
所以,我需要首先显示当前时间与表中列(remind_date)之间存在差异的订单必须为(-70 - 0)ASC 如果remindDAteDIFf不在我的范围内,则按status_updated DESC排序,在其他情况下按(status_updated) DESC排序。
我写了这个查询:
SELECT TIMESTAMPDIFF(MINUTE,remind_date, NOW()) as remindDAteDIFf,
order_id, remind_date, status_id, status_updated
FROM s_order
ORDER BY IF(remindDAteDIFf BETWEEN -70 AND 0, remind_date, status_updated) DESC;
这很好,但我需要按 ASC 排序字段 RememberDAteDIFf 和按 DESC 排序 status_updated。 (首先需要显示remindDAteFf = -16和-28)我已经尝试过
IF(remindDAteDIFf BETWEEN -70 AND 0, remind_date ASC, status_updated DESC)
但是我收到错误,表示查询不正确
最佳答案
我认为您需要 order by
中的三个键:
ORDER BY (remindDAteDIFf BETWEEN -70 AND 0) DESC, -- put these first
(CASE WHEN remindDAteDIFf BETWEEN -70 AND 0 THEN remind_date END) ASC,
status_updated DESC;
第一个键将“最近”值放在第一位。第二个订单仅在 remind_date
之前订购。第三个通过 status_updated
对其余部分进行排序。
关于MYSQL ORDER BY TIMESTAMPDIFF IF 中的两列,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/44824509/
我正在向 TIMESTAMPDIFF(HOUR,'29-10-2012','19-11-2012') 提供输入,但我得到的输出为 504 但值应为 510。 输出为 510,因为起始值为 29/10/
你有没有可能以分钟为单位计算总和,而不是在某个特定时间之间,比如 2300 到 0700 之间 SELECT SUM( TIMESTAMPDIFF(MINUTE, open_time, close_t
这是一个简单的查询,用于检索用户上次在线的分钟数、小时数或天数。小时和天的计算是正确的。但是几分钟后,以下返回正确的值但为负值,例如-4分钟、-6分钟、-10分钟时应为正值。 select usern
我的 MySQL 查询有一个小问题: 表格是这样的 id timedate user action 1 2010-01-01 10:01:01 AB991 login 2
我有以下表结构: +----+---------------------+---------------------+ | id | created_at | closed
我真的很困惑。无论我将最后一个子句改为,下面的语句都会返回相同的结果 TIMESTAMPDIFF( SECOND , `Regkey`.`expires` , NOW( ) ) > 0 TI
是的,之前已经问过非常类似的问题,但请耐心等待。 现在,人们提出了许多函数来根据出生日期确定准确的年龄,同时考虑闰年等因素。然而MySQL documentation提供了一个非常简单的解决方案: S
我有这个查询来向我展示付款之间的平均时间差异 SELECT TIMESTAMPDIFF(SECOND, MIN(x.ts), MAX(x.ts) )/(COUNT(DISTINCT(x.ts)) -1
我有一个学生数据库,其中有注册日期列。我需要在 sql 上运行一个查询,查找该日期和今天的日期,并显示 yy 年 mm 月的差异。 我正在使用 TIMESTAMPDIFF 来计算这些日期之间的差异,但
为什么 TIMESTAMPDIFF(MONTH, '2015-12-25', '2016-02-24') 给我1?我希望 2016-01-25 为 1。 我的猜测是,它实际上返回了大约 1.999 个
我在sql fiddle上使用mysql版本5.6,并且我尝试使用timestampdiff()函数来查找名为Task的表中第一列中的最小值和第二列中的最大值之间的差异正在关注 select Time
我正在尝试在我的一个查询中使用 TIMESTAMPDIFF 函数,这让我很头疼。 表格 id | web_address | timeperiod | timeperiod_exp 1
简单的问题 更改输出以使其仅显示最后两位小数的最佳方法是什么? SELECT AVG(TIMESTAMPDIFF(hour, start_it,start_qa) 这样“13.2500”的输出将显示为
我可以使用以下方法获取从数据库时间到 UTC (0) 的时区偏移量: SELECT TIMESTAMPDIFF(HOUR, UTC_TIMESTAMP(), NOW()); 我如何获得从 UTC 到特
我的查询有问题,即使我现在发布帖子,TIMESTAMPDIFF不适用于 MINUTE 。但是,如果我输入 DAY 或 MONTH,它会起作用,我真的无法弄清楚可能是什么问题。我有比秒更新的帖子。请提供
SELECT M.strMemID AS 'Member ID', M.strMemLastname
我正在使用以下语法 TIMESTAMPDIFF(2, CHAR(CREATED - TIMESTAMP('1970-01-01 00:00:00')) 哪里CREATED类型为 TIMESTAMP数据
我的 SQL 查询仅在答案方面是正确的,但在格式方面却失败了。例如,小时和分钟的转换值为 4 小时 30 分钟...如果我将它与“:”(冒号是小时和分钟的正常分隔符)连接起来,它只会显示为“43”而不
我的恒温器有一张 table 。它记录数据如下。所以当它打开时,我得到一个时间状态,状态 1 表示打开,状态 0 表示加热关闭。此外,每次开/关时,它都会为我提供每天的总供暖量。 Date
我正在使用 14.4 版本的 mysql,我正在尝试执行以下查询: SELECT TIMESTAMPDIFF(MINUTE, MINUTE(NOW()), NOW()) 这应该返回当前小时的时间戳,但
我是一名优秀的程序员,十分优秀!