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

यह पता लगाना कि क्या MySql में n दिनों में कोई वर्षगांठ आ रही है

जैसा कि अन्य ने कहा है, आपको अपनी तुलना में वर्ष को अनदेखा करने की आवश्यकता है। DAYOFYEAR() फ़ंक्शन ऐसा करने का एक तरीका है।

यहाँ मेरे सिर के ऊपर से एक त्वरित समाधान है। यह अगले 10 दिनों में सभी जन्मदिन लौटा देगा, भले ही दिसंबर का अंत हो और जन्मदिन अगले साल हो।

यह लीप वर्ष को ठीक से संभाल नहीं पाता है, इसलिए यह मार्च के शुरुआती जन्मदिनों के लिए 1 दिन बंद हो जाएगा यदि यह वर्ष लीप वर्ष है और व्यक्ति का जन्म लीप वर्ष या इसके विपरीत में नहीं हुआ है। लीप वर्ष भी जनवरी के शुरुआती जन्मदिनों को कभी-कभी दिसंबर के अंत में एक दिन की छुट्टी दिखाने का कारण बनेंगे। यदि कोई लीप वर्ष सुधार जोड़ना चाहता है, तो बेझिझक :)

SELECT birthdate 
FROM Anniversaries 
WHERE dayofyear(birthdate) - dayofyear(curdate()) between 0 and 10 
or dayofyear(birthdate) + 365 - dayofyear(curdate()) between 0 and 10;


  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. गणना द्वारा SQL आदेश

  2. mysqli_query () हमेशा सच लौटाता है

  3. mysql एक केस स्टेटमेंट के साथ कई पंक्तियों को अपडेट करता है, प्रत्येक अपने स्वयं के मूल्यों के साथ

  4. क्लाउड एसक्यूएल प्रॉक्सी का उपयोग कर एकाधिक क्लाउडएसक्यूएल इंस्टेंस से कनेक्ट करना?

  5. पीडीओ डेटा पुनर्प्राप्त करने और एक रिकॉर्ड पॉप्युलेट करने के लिए