Mysql
 sql >> डेटाबेस >  >> RDS >> Mysql

mysql - दिन के घंटे के हिसाब से टाइमस्टैम्प खोजें

आप HOUR() का उपयोग कर सकते हैं समारोह:

SELECT * FROM 'table' WHERE HOUR(`updatetime`) = 9

काश, इस क्वेरी का प्रदर्शन भयानक होगा , जैसे ही आप कुछ हज़ार पंक्तियों को पार करते हैं - फ़ंक्शन अनुक्रमित नहीं होते हैं, इसलिए इस क्वेरी के चलने पर हर बार एक पूर्ण तालिका स्कैन होगा।

हमने ऐसी ही स्थिति में क्या किया:हमने एक और कॉलम updatetime_hour . बनाया , इसे अनुक्रमित किया, और इसे डालने पर पॉप्युलेट किया (और अपडेट पर अपडेट किया गया); तो क्वेरी तेज हो जाती है:

SELECT * FROM 'table' WHERE `updatetime_hour` = 9

हां, हमने डेटा को असामान्य बना दिया है, और यह थोड़ा अधिक हाउसकीपिंग है, लेकिन मुझे अभी तक एक तेज़ समाधान नहीं दिख रहा है। (हमने updatetime_hour . को पॉप्युलेट करने के लिए इंसर्ट और अपडेट ट्रिगर्स पर विचार किया और उनका आकलन किया updatetime . से , लेकिन प्रदर्शन के खिलाफ फैसला किया; देखें कि क्या वे आपके लिए उपयोगी होंगे।)



  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. MySQL में NOT NULL बाधा कैसे जोड़ें

  2. पुनर्निर्माण पर प्रारंभिक डेटा डालने वाला इकाई फ्रेमवर्क

  3. max_allowed_packet पैरामीटर के साथ भी mysqldump का उपयोग करते समय mysql से कनेक्शन खो जाना

  4. MySQL प्रतिकृति समस्या निवारण:भाग दो

  5. कॉलम नाम से पहले SQL स्टेटमेंट में एट-साइन करें