3

我有一个这样的数据库:

桌子
姓名 | 时间戳
------------------------------------------
你好 | 2013-02-23 14:26:18
哟 | 2013-03-22 14:26:18

我想做一个SQL Select,只选择过去的事情(例如,没有为未来设置时间戳)。

最好的方法是什么?

谢谢你的帮助。

编辑:

我尝试了这些建议,但它们似乎都不起作用,这是查询:

SELECT * FROM TABLE WHERE timestamp<NOW()

它仍然选择了所有内容,我也尝试过:

SELECT * FROM TABLE WHERE timestamp<CURRENT_TIMESTAMP

它仍然再次选择了所有内容。

真的很奇怪,当我使用“timestamp>CURRENT_TIMESTAMP”时,它似乎可以工作(它隐藏了所有未来的项目)但当我尝试另一个没有意义的方向时却不行。可能是时区问题还是类似的问题?

4

5 回答 5

4
SELECT `Name` FROM `TABLE` WHERE `timestamp` < NOW();

应该得到你想要的。

于 2013-02-23T21:36:04.477 回答
0
SELECT * FROM TABLE WHERE timestamp<now();
于 2013-02-23T21:35:58.827 回答
0

尝试以下查询:

SELECT * FROM YourTable WHERE 'timestamp' < CURRENT_TIMESTAMP
于 2013-02-23T21:35:59.750 回答
0

你有没有尝试过

SELECT * 
FROM yourtable T
WHERE T.timestamp < NOW();

...?

NOW()...

返回当前日期和时间作为 'YYYY-MM-DD HH:MM:SS' 或 YYYYMMDDHHMMSS.uuuuuu 格式的值,具体取决于函数是在字符串还是数字上下文中使用。该值以当前时区表示。

于 2013-02-23T21:36:24.630 回答
0
select * from table where `timestamp` < now()
于 2013-02-23T21:38:29.363 回答