簡體   English   中英

獲取所有數據,直到當月

[英]get all the data until current month

我有一個包含兩列MONTH和TEXT的數據庫。

如何顯示所有條目,但不顯示超過當前月份的月份? (例如,如果我在3月,8月和12月有文本,而我們在8月,則我只希望顯示3月和8月的文本。)

<?php

// select all data at once

$construct ="SELECT * from table WHERE MONTH(DataIntroducere) = ???";
rest of code

?>

我想要這個,因為我將輸入未來月份的文本,但我不希望它顯示。

嘗試像

$construct ="SELECT * FROM table WHERE MONTH(DataIntroducere) <= ".date('m');

或者在mysql中,您可以嘗試像

$construct ="SELECT * from table WHERE MONTH(DataIntroducere) <= MONTH(CURDATE())";

並嘗試避免由於整個ext/mysql PHP擴展而產生mysql_*語句,該擴展提供了所有以mysql_*前綴命名的功能,自PHP v5.5.0 mysql_*正式棄用, 並將在以后刪除

您可以更好地使用另外兩個MySQL擴展: MySQLiPDO_MySQL ,可以使用其中任何一個代替ext/mysql

最明智的方法是將日期另存為unix時間戳。 http://www.unixtimestamp.com/index.php

大多數編程語言都提供返回unix時間戳的方法。 然后,您可以將當前月份轉換為時間戳並進行類似的查詢

SELECT * FROM table WHERE month < timestamp_of_current_month
$construct = "SELECT * FROM table WHERE DATE(DataIntroducere) <= DATE(NOW());

這是(正確的)一種。 而且您不必關心YEAR(),MONTH(),CURDATE()或其他任何內容。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

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