2014-06-18 60 views
-1

我工作的一個項目,我有兩個表,一個是tbllessontopic節省了獨特的教案和節省日期安排的課程計劃將taught.Now另一個表tbllessonperiodallocation我已經通過使用group_concat()函數將查詢應用於一個名爲日期的列中的特定課程計劃的所有日期。現在,我試圖按升序排列此列中的日期,我在tbllessonperiodallocation中的列日期是var char類型,所以雖然試圖將其轉換爲日期時間格式我收到錯誤不正確的日期時間值。請建議我如何實現這一點。無法字符串到日期時間轉換的MySQL查詢

查詢

select l.id,l.topic,l.dateallocated,l.noofperiods,s.subjectname,c.classname, 
group_concat(p.date order by DATE_FORMAT(STR_TO_DATE(p.date, '%d %m %Y'), '%Y-%m-%d') asc) as date from tbllessontopic l 
join tbllessonperiodallocation p on p.lessontopicid=l.id 
join tblclass c on c.classcode=l.classcode 
join tblsubject s on s.sshortname=l.subject group by p.lessontopicid 

輸出

enter image description here

從這個問題

除此之外,如果可能,我想在日期列的第一個日期與今天的日期比較,並希望找出哪些屬於記錄今天或今天的日期後,例如我的第一排有2013年8月27日,2013年11月7日,05年5月5日現在我想匹配2013年8月27日與今天的日期

+0

爲什麼要使用DATE_FORMAT和STR_TO_DATE功能一起 –

+0

,因爲我已經看到某處的字符串到日期的時候我們要做這樣的,因爲我在查詢中所做的上述 – rupinder18

回答

1

Q1)嘗試將%m「Month,數字(00-12)」更改爲%M「月份名稱」。 Q2)GROUP_CONCAT ORDER BY

+0

感謝名單就解決了我的不正確的日期時間轉換問題和我已經使用order.Please幫助我解決第二部分,我可以匹配的第一個日期與今天的日期 – rupinder18

相關問題