[英]i want to pick last three days data from my database tables in codeigniter (msql)
我的数据库中有表,我想从3个不同的数据库表中选择最后三天的数据,我还想显示数据是否相同,否则将显示结果,否则在codeigniter中显示空行。
我那里所有的表看起来像这样==>
id temp hum rain time
1 16 62 NR 2018-01-05 11:00:23
2 17 62 NR 2018-01-06 11:00:22
3 17 61 NR 2018-01-07 11:00:22
4 16 60 NR 2018-01-08 11:00:23
您可以在此处找到MySQL日期和时间函数的列表。 这个问题有趣的一个是DATEDIFF()
,它以天为单位返回两个日期之间的差。
如果您到目前为止已经显示了SQL语句,那将很有帮助,但是我想这是这样的:
SELECT * from my_table
若要仅选择日期在特定范围内的行,请使用WHERE
。 在这种情况下,我们只需要时间少于现在的三天的行:
SELECT * from my_table WHERE DATEDIFF(NOW(), my_table.time) < 3
您可能需要进行一些尝试才能获得所需的准确结果,具体取决于您如何舍入时间。
如果你想获得的第二三天之内的结果,你可以用同样的想法,但时间戳:
SELECT * from my_table WHERE (CURRENT_TIMESTAMP() - 60*60*24*3) < UNIX_TIMESTAMP(my_table.time)
60 * 60 * 24 * 3是三天内的秒数。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.