簡體   English   中英

我想從Codeigniter(msql)的數據庫表中選擇最近三天的數據

[英]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.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM