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

SQL में टाइमस्टैम्प से, आज, कल, इस सप्ताह, इस महीने और दो तिथियों के बीच के रिकॉर्ड का चयन php mysql

यदि आप केवल तिथि के अनुसार चयन कर रहे हैं, तो अपनी गणनाओं को CURDATE . पर आधारित करें (जो केवल तारीख लौटाता है) के बजाय NOW (जो दिनांक और समय लौटाता है)। ये उदाहरण दिन की सीमाओं में हर समय दिखाई देंगे:

  • आज:WHERE timestamp >= CURDATE()
  • कल:WHERE timestamp >= DATE_SUB(CURDATE(), INTERVAL 1 DAY) AND timestamp < CURDATE()
  • इस महीने:WHERE timestamp >= DATE_SUB(CURDATE(), INTERVAL DAYOFMONTH(CURDATE())-1 DAY)
  • दो तिथियों के बीच 3 जून 2013 और 7 जून 2013 (ध्यान दें कि समाप्ति तिथि को 8 जून के रूप में कैसे निर्दिष्ट किया गया है, न कि 7 जून):WHERE timestamp >= '2013-06-03' AND timestamp < '2013-06-08'

"यह सप्ताह" इस बात पर निर्भर करता है कि आप अपना सप्ताह किस दिन शुरू करते हैं; मैं इसे आप पर छोड़ दूँगा। आप DAYOFWEEK CURDATE() में बदलाव करने के लिए फ़ंक्शन उचित श्रेणियों के लिए।

परिशिष्ट :OP का कॉलम प्रकार INTEGER था , एक यूनिक्स टाइमस्टैम्प संग्रहीत करना, और मेरा उत्तर मान लिया गया कि कॉलम प्रकार TIMESTAMP . था . यहां बताया गया है कि यूनिक्स टाइमस्टैम्प मान के साथ सभी समान चीजें कैसे करें और कॉलम अनुक्रमित होने पर अभी भी ऑप्टिमाइज़ेशन बनाए रखें (जैसा कि ऊपर दिए गए उत्तर TIMESTAMP करेंगे तो क्या करेंगे) कॉलम अनुक्रमित है)...

मूल रूप से, समाधान केवल शुरुआत और/या समाप्ति तिथियों को UNIX_TIMESTAMP समारोह:

  • आज:WHERE timestamp >= UNIX_TIMESTAMP(CURDATE())
  • कल:WHERE timestamp >= UNIX_TIMESTAMP(DATE_SUB(CURDATE(), INTERVAL 1 DAY)) AND timestamp < UNIX_TIMESTAMP(CURDATE())
  • इस महीने:WHERE timestamp >= UNIX_TIMESTAMP(DATE_SUB(CURDATE(), INTERVAL DAYOFMONTH(CURDATE())-1 DAY))
  • दो तिथियों के बीच 3 जून 2013 और 7 जून 2013 (ध्यान दें कि समाप्ति तिथि 8 जून के रूप में कैसे निर्दिष्ट की गई है, न कि 7 जून):WHERE timestamp >= UNIX_TIMESTAMP('2013-06-03') AND timestamp < UNIX_TIMESTAMP('2013-06-08')



  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. क्या कोई विदेशी कुंजी प्राथमिक कुंजी के रूप में कार्य कर सकती है?

  2. MySQL ट्रिगर अपडेट के बाद ही अगर पंक्ति बदल गई है

  3. MySQL एकाधिक तालिकाओं में सम्मिलित करें? (डेटाबेस सामान्यीकरण?)

  4. SQL क्वेरी के साथ निकटतम अक्षांश/देशांतर खोजें

  5. उपयोगकर्ता खाता प्रबंधन, भूमिकाएं, अनुमतियां, प्रमाणीकरण PHP और MySQL - भाग 4