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

जन्मतिथि और आयु को कैसे स्टोर करें ताकि PHP/MySQL में आयु को दैनिक रूप से अपडेट किया जा सके?

सरल उत्तर नहीं है; किसी व्यक्ति की उम्र को कभी भी स्टोर न करें। यह प्रत्येक व्यक्ति के लिए वार्षिक रूप से बदलता है लेकिन, जैसा कि आप कहते हैं, आपको यह जांचना होगा कि यह प्रतिदिन प्रत्येक व्यक्ति के लिए सही है।

केवल जन्म तिथि संग्रहित करें, और फिर डेटाबेस से चयन करते समय आयु की गणना करें। केवल today - date of birth है इसलिए लगभग कोई CPU नहीं लेता है।

संपादित करें:

ManseUK's answer में मेरी टिप्पणी का विस्तार करने के लिए असफलता की भी संभावना है। यदि आपका सर्वर/डेटाबेस डाउन हो जाए तो क्या होगा? या आपका अपडेट अपने निर्दिष्ट समय पर चलने में विफल रहता है? या कोई व्यक्ति साथ आता है और उस तारीख के लिए पहले से ही अपडेट चलाए जाने के बाद इसे मैन्युअल रूप से चलाता है? या कोई आपका शेड्यूलर बंद कर देता है? यदि आप Age की गणना करते हैं तो ऐसा होने का कोई खतरा नहीं है जैसा कि आप डेटाबेस से चुनते हैं।

यह चुनने के लिए कि आयु 25 से 30 वर्ष के बीच कहाँ है और एक DATE कॉलम dateofbirth मानकर आपकी क्वेरी कुछ इस तरह होगी:

select *
  from users
 where dateofbirth between date_add( curdate(), interval -30 year )
                       and date_add( curdate(), interval -25 year )

सुनिश्चित करें कि users dateofbirth पर अनुक्रमित किया जाता है ।



  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. मैं एक MySQL डेटाबेस में संग्रहीत PHP को कैसे निष्पादित करूं?

  3. MySQL में एक स्ट्रिंग में बिट्स की संख्या कैसे प्राप्त करें - BIT_LENGTH ()

  4. MacOSX होमब्रेव mysql रूट पासवर्ड

  5. PHP MySQL सरणी कुंजियों से बहुआयामी सहयोगी सरणी निर्माण क्वेरी डालें