我試圖從 SQL 中選擇具有日期時間格式的列,例如2017-12-31 12:01:12
,但我只需要選擇日期,例如2017-12-31
基於使用者在表單中輸入並提交的日期。目標是選擇該日期內的所有活動。
範例:表單中的輸入格式只是yyyy-mm-dd
,但是在SQL中,日期儲存為yyyy-mm-dd hh:mm:ss
,如果輸入日期為yyyy-mm-dd
format ,則該列資料儲存為該格式時將被忽略yyyy-mm-dd hh:mm:ss
。
如何yyyy-mm-dd
僅從yyyy-mm-dd hh:mm:ss
列中進行選擇?
$mysql=("SELECT action_time FROM table WHERE action_time ='".$date."' Order by
action_time DESC");
答案1
如果您只對日期部分感興趣,請使用DATE()
:
SELECT DATE(action_time) FROM table;
請注意,您應該始終檢查使用者輸入,因為可以變更客戶端(HTML 和 JS)以將任意資料傳送到您的伺服器。還請查看PHP中如何防止SQL注入?