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

हर दिन 12:00:00 और 18:00:00 के बीच के अंतराल में समय के अनुसार रिकॉर्ड का चयन करें

आपके यहां दो मुद्दे हैं:

  1. आप जहां क्लॉज में कॉलम एलियासेस का उल्लेख नहीं कर सकते हैं। इसके बजाय, आपको अपनी गणना को जहां क्लॉज में दोहराना होगा
  2. TIME() का उपयोग करें डेटाटाइम का समय भाग निकालने के लिए कार्य करता है

उन दो मुद्दों के समाधान के साथ, आपको मिलता है:

select
    f.fly_reg,
    TIME(f.start_tid) AS st,
    f.start_hight 
    FROM vbsk_dk_02.fab_master_flyvedata f 
where TIME(f.start_tid) between '12:00:00' AND '18:00:00'

एक विकल्प के रूप में, यदि आपको वास्तव में चयन में समय मूल्य की आवश्यकता नहीं है, तो आप इसे हटा सकते हैं और बस इसे जहां खंड में रख सकते हैं। साथ ही, आप HOUR() . का उपयोग कर सकते हैं कार्य करें यदि वह बेहतर है। उन दो परिवर्तनों के साथ, आपकी क्वेरी इस प्रकार सरल हो जाएगी:

select *
FROM vbsk_dk_02.fab_master_flyvedata
where HOUR(f.start_tid) between 12 and 18

जो बहुत ज्यादा साफ है :)



  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 - किसी अन्य तालिका में स्वचालित रूप से घटनाओं को अपडेट करें

  2. कई-से-अनेक संबंध उदाहरण

  3. रेडीस्टेडमेंट का उपयोग करके जावा में ब्लॉब डेटा सम्मिलित करना

  4. MySQL प्रतिकृति:यदि मैं कोई डेटाबेस निर्दिष्ट नहीं करता, तो क्या log_bin सब कुछ लॉग करेगा?

  5. कैननिकल:HTML फॉर्म डेटा को MySQL डेटाबेस में कैसे सेव करें