2008-11-06 16 views
46

से माइस्क्ल स्ट्रिप टाइम घटक मुझे समय घटक को ध्यान में रखे बिना माइस्क्ल में दिनांक तुलना करने की आवश्यकता है यानी मुझे '2008-11-05 14:30:00' को '2008-11-05' में परिवर्तित करने की आवश्यकता हैडेटाटाइम

वर्तमान में मैं यह कर रहा हूं:

SELECT from_days(to_days(my_date)) 

वहाँ ऐसा करने का एक उचित तरीका है?

उत्तर

89

हाँ, date समारोह का उपयोग करें:

SELECT date(my_date) 
3

PostgreSQL में आप TRUNC() फ़ंक्शन का उपयोग, लेकिन मैं MySQL के लिए यह दिखाई नहीं दे रहा। मेरे संक्षिप्त गुगलिंग से, ऐसा लगता है कि आपको अपने DATETIME मान को केवल DATE होने के लिए डालना होगा।

date_col = CAST(NOW() AS DATE) 

देखें http://dev.mysql.com/doc/refman/5.0/en/date-and-time-types.html

+1

'date_trunc से आता है() '(' trunc() 'नहीं) वास्तव में पोस्टग्रेस में * समय * को हटा नहीं देगा। यह केवल इसे '00: 00: 00' पर सेट करेगा जो कुछ अलग है। –

3

select date(somedate) सबसे आम है।

आप अन्य प्रारूपों को समायोजित करने की जरूरत है, तो आप उपयोग कर सकते हैं:

SELECT DATE_FORMAT('2009-10-04 22:23:00', '%Y-%m-%d'); 
+1

DATE_FORMAT केवल उदाहरण के लिए वर्ष घटक निकालने के लिए बहुत उपयोगी है। धन्यवाद। –

-3

आप ToShortDateString();

+0

क्या यह एक सी # फ़ंक्शन नहीं है? प्रश्न एक MySQL समाधान – andrewsi

+0

के बाद है यह सी # है और वास्तव में यह टाइमस्टैम्प को नहीं हटाता है: वर्तमान दिनांकटाइम ऑब्जेक्ट के मान को इसके समतुल्य लघु दिनांक स्ट्रिंग प्रतिनिधित्व में परिवर्तित करता है। –

1

बस इसे date("d F Y",strtotime($row['date'])) करने का एक आसान तरीका इस्तेमाल कर सकते हैं जहां $row['date'] आपकी क्वेरी

संबंधित मुद्दे