说我想查找最近下的订单。我正在尝试以下语句:
SELECT * FROM orders WHERE time < now() - interval '30 second';
此方法不起作用(它不会选择任何行。)尽管可以进行以下操作:
SELECT * FROM orders WHERE time < now();
我需要使用固定时间变量吗?喜欢:
SELECT * FROM orders WHERE time < '2018-07-01 12:00:00' - interval '30 second';
我猜我不应该在语句中使用now(),因为它在操作过程中可能会发生变化...
答案 0 :(得分:0)
我相信您的比较方向错误:
SELECT *
FROM orders
WHERE time > now() - interval '30 second';
这将返回最近30秒内的值。
这假设time
的日期类型适合进行比较。