MySQL तिथि प्रारूप DD / MM / YYYY क्वेरी का चयन करें?


139

मैं दिनांक प्रारूपों द्वारा ऑर्डर करने के तरीके पर थोड़ा भ्रमित हूं।

प्रारूप के लिए YYYY-MM-DDआप ऐसा करेंगे:...ORDER BY date DESC...

आप कैसे ऑर्डर करेंगे DD/MM/YYYY?

यह काम नहीं कर रहा है:

SELECT * FROM $table ORDER BY DATE_FORMAT(Date, '%Y%m%d') DESC LIMIT 14

जवाबों:


152

आप STR_TO_DATE()अपने स्ट्रिंग को MySQL तिथि मान और ORDER BYपरिणाम में बदलने के लिए उपयोग कर सकते हैं :

ORDER BY STR_TO_DATE(datestring, '%d/%m/%Y')

हालाँकि, आप DATEस्ट्रिंग का उपयोग करने के बजाय स्तंभ को डेटा प्रकार में परिवर्तित करने के लिए समझदार होंगे ।


188

लगता है कि आप शायद उत्पादन की तारीख को प्रारूपित करना चाहते हैं? इसके बाद आप यही हैं

SELECT *, DATE_FORMAT(date,'%d/%m/%Y') AS niceDate 
FROM table 
ORDER BY date DESC 
LIMIT 0,14

या क्या आप वास्तव में वर्ष से पहले महीने से पहले दिन के अनुसार क्रमबद्ध करना चाहते हैं?


1
मैं 14 नवीनतम तारीखों / रिकॉर्डों को पसंद करूंगा :) डेटाबेस में प्रारूप "डीडी / एमएम / वाईवाईवाईवाई" है!
के - एसओ में विषाक्तता बढ़ रही है।

क्या डेटाबेस में तारीख एक वास्तविक तिथि प्रकार है, या यह एक स्ट्रिंग प्रकार है?
ट्रेपर

2
mysql> DESCRIBE Table;और आउटपुट पेस्ट करें
ट्रैपर

DATE_FORMAT (दिनांक, '% a') सप्ताह के संक्षिप्त नाम का एक दिन देगा। मैंने इसका इस्तेमाल कुछ बॉक्सप्लाट्स और जैसे RStudio में करने के लिए किया।
user208145

39
SELECT DATE_FORMAT(somedate, "%d/%m/%Y") AS formatted_date
..........
ORDER BY formatted_date DESC

3
क्या यह सिर्फ मेरे लिए है, या %lकाम नहीं करता है? यह 12हर महीने देता है और मुझे इसे बदलना पड़ा %m
beroe

1
% l घंटे के लिए है dev.mysql.com/doc/refman/5.5/en/… @beroe


10
SELECT DATE_FORMAT(COLUMN_NAME, "%d/%m/%Y %h:%i %p");

या

SELECT DATE_FORMAT("2019-05-10 19:30:10", "%d/%m/%Y %h:%i %p");

OUTPUT 10/05/2019 07:30 PM है



4

यदि घंटा महत्वपूर्ण है, तो मैंने उपयोग किया str_to_date(date, '%d/%m/%Y %T' ), %Tप्रारूप में घंटा दिखाता है hh:mm:ss


इसे घंटे के रूप में संदर्भित नहीं किया जाता है। %Tसमय प्रारूप के साथ मूल्य दिखाता है। वैसे, आपको मेरा उत्थान मिला है।
वूल्वरिन

3

ORDER किसी दिनांक प्रकार पर दिनांक स्वरूप पर निर्भर नहीं करता है, दिनांक स्वरूप केवल डेटाबेस में दिखाने के लिए है, वे समान डेटा हैं।


सॉर्ट करने के लिए फ़ॉर्मेट का उपयोग किया जा सकता है (यदि कोई वास्तव में चाहता है, तो मेरे लिए अजीब लगता है), लेकिन ऐसा सॉर्ट इंडेक्स पर आधारित नहीं हो सकता है, इसलिए [बी] महंगा [/ b] है, केवल अच्छे डिज़ाइन किए गए कॉलमों को इंडेक्स के साथ निष्पादित किया जा सकता है ( तेजी से) और सर्वर द्वारा अनुकूलित
Jacek Cz
हमारी साइट का प्रयोग करके, आप स्वीकार करते हैं कि आपने हमारी Cookie Policy और निजता नीति को पढ़ और समझा लिया है।
Licensed under cc by-sa 3.0 with attribution required.