我有一個查詢要根據日期提取一些數據,如下所示$duplicateCheckQuery = "SELECT * FROM vtag.supervisorupdate WHERE dateAdded=?";$stmtDupQuery = mysqli_stmt_init($conn);if(!mysqli_stmt_prepare($stmtDupQuery, $duplicateCheckQuery)){ echo "Details check in supervisor table SQL statement failed";} else { mysqli_stmt_bind_param($stmtDupQuery,"s", $dateToCheck); mysqli_stmt_execute($stmtDupQuery); $result = mysqli_stmt_get_result($stmtDupQuery); $totalOut = mysqli_fetch_array($result); }該查詢基于date.但現在我想根據月份提取數據。但我沒有這樣的月份列來提取數據。唯一可用的日期信息是此dateAdded列。我知道 中有一個MONTH函數MySql。但我不確定如何使用它來過濾此dateAdded列中的數據。有人知道該怎么做嗎?編輯列 中的 1 個日期樣本,dateAdded如下所示
2 回答

慕沐林林
TA貢獻2016條經驗 獲得超9個贊
嘗試 MONTH 函數:
SELECT * FROM vtag.supervisorupdate WHERE MONTH(dateAdded) = 1
1 = 一月。
如果您的字段不是日期值,請將其轉換為日期:
CAST(dateAdded AS DATE) as newDate;
或 STR_TO_DATE(dateAdded, '%Y-%d-%m') 作為 newDate
在最后:
SELECT * FROM vtag.supervisorupdate WHERE MONTH(STR_TO_DATE(dateAdded, '%Y-%d-%m')) = 1
- 2 回答
- 0 關注
- 174 瀏覽
添加回答
舉報
0/150
提交
取消