[英]STR_TO_DATE mysql & php
我有一列名為dispatchdate
的列,該列存儲為VARCHAR(255)。 雖然它以“ 12/06/2013”格式存儲日期。 (DD / MM / YYYY)
我知道我應該使用一個更好的領域,但是我仍然是新手/正在學習MYSQL和PHP。 它僅在本地PC上進行測試等。
在我的頁面上,我有一個查詢,該查詢執行基本的“從表中選擇*”並列出行。
我想重新定義查詢,以便輸入日期范圍來縮小列表的范圍。
我目前正在使用...
mysql_connect('localhost','root','');
mysql_select_db('operations');
$result = mysql_query("SELECT * FROM dispatch");
我假設我必須使用STR_TO_DATE將其從varchar轉換為日期格式。 但是%d /%m /%Y顯示為“ 2013-06-12”而不是“ 12-06-2013”。
如何使用SELECT STR_TO_DATE( dispatchdate, '%d/%m/%Y' )
在PHP中構建查詢,然后輸入要搜索的條件(例如13 SELECT STR_TO_DATE( dispatchdate, '%d/%m/%Y' )
13-> 13/07/13)
顯然,您想要以存儲的字符格式檢索它。 因此,請勿在select
進行轉換。 只需在where
子句中進行轉換即可。 例如,要獲取上周的行:
SELECT *
FROM dispatch
where STR_TO_DATE( dispatchdate, '%d/%m/%Y' ) >= adddate(now(), - 7)
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.