2012-12-16 25 views
5

मैं एक मेज है कि एक datetime क्षेत्र प्रकार शामिल है, और मुझे सॉर्ट करने के लिए चयन वाक्य रचना निर्भर करता है यह उतरते पर, बस नीचे दिए की तरह हैं:आदेश

2012-12-12 01:44:20

2012-12-11 01:44:40

2012-12-10 01:40:36

2012-12-09 12:28:19

2012-12- 09 12:19:21

2012-12-09 12:11:50

2012-12-09 12:00:11

2012-12-09 11:59:26

2012-12-09 11:57:08

2012-12-09 11:55:21

उत्तर

20
ORDER BY columnname DESC 

टा-दाह!

+0

@Samer: यह वास्तव में काम करता है, लेकिन यह के रूप में अच्छी तरह से काम करता है, तो आप 'UNIX_TIMESTAMP' को दूर करेंगे। इस मामले में यह – zerkms

+1

कुछ भी नहीं बदलेगा मैंने इस वाक्यविन्यास का उपयोग किया है और यह सही ढंग से काम करता है: UNIX_TIMESTAMP ('my_column_name') desc – Samer

+7

द्वारा आदेश और जैसा कि मैंने यहां 'UNIX_TIMESTAMP' व्यर्थ कहा था। 'My_column_name डीईएससी' द्वारा आदेश पर्याप्त है – zerkms

9
ORDER BY UNIX_TIMESTAMP(columnname) DESC 

UNIX_TIMESTAMP की जरूरत है, क्योंकि mysql उन्हें तार (पूर्व 9:0016:00 के बाद दिखाई देता है)

0

परीक्षण मेरे मामले dtEvent क्षेत्र datetime प्रकार है में। यह एकमात्र समाधान मैंने पाया है:

SELECT myTable.recordId, myTable.dtEvent 
FROM myTable 
WHERE myTable.dtEvent IS NOT NULL 
ORDER BY CAST(YEAR(myTable.dtEvent) AS UNSIGNED), 
    CAST(MONTH(myTable.dtEvent) AS UNSIGNED), 
    CAST(DAY(myTable.dtEvent) AS UNSIGNED) 
LIMIT 100;