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

पीएचपी समाप्ति तिथि

ठीक है, मैं आपके डेटाबेस संरचना को नहीं जानता, लेकिन मान लें कि यह कुछ इस तरह है:

user_table
-----------------------------------------
user_id   | date_of_redeem | subscription
-----------------------------------------
user1     | 2014-02-01     | 90
user2     | 2014-05-18     | 365
user3     | 2014-07-22     | 180

इसलिए, केवल SQL कथनों का उपयोग करके, आप DATE_SUB जैसी किसी चीज़ का उपयोग कर सकते हैं। date_of_redeem की तुलना आज की तारीख से घटाकर सदस्यता राशि करें। यदि date_of_redeem का मान अधिक है, तो आपको एक परिणाम मिलेगा, अन्यथा यह एक खाली परिणाम सेट लौटाएगा।

SELECT *
FROM `user_table`
WHERE `date_of_redeem` > DATE_SUB(NOW(), INTERVAL `subscription` DAY) AND `user_id` = 'desired_user_id'

संपादित करें:उपरोक्त क्वेरी के लिए SQL Fiddle:http://sqlfiddle.com/#!2/ f95ea/11 (बस बदलें user3 किसी भी उपयोगकर्ता आईडी को यह जांचने के लिए कि क्या वे कोई परिणाम लौटाते हैं।

यदि आप सभी सदस्यता समाप्ति तिथियों वाली तालिका प्राप्त करना चाहते हैं, तो आप ऐसा कुछ कर सकते हैं:

SELECT `user_id` AS `User`, (DATE_ADD(`date_of_redeem`, INTERVAL `subscription` DAY)) AS `Subscription Ends`
FROM `user_table`

इसके लिए SQL Fiddle:http://sqlfiddle.com/#!2/f95ea/9



  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 चुनिंदा शैलियों का मुद्दा (php)

  2. डोकर-लिखें में स्थानीय MySQL सर्वर से कनेक्ट नहीं हो सकता

  3. स्थानीय MYSQL DB को दूरस्थ DB सर्वर तक कैसे ले जाएँ?

  4. क्या PHP के preg_replace के बराबर एक MySQL है?

  5. मैं पायथन के साथ MySQL डेटाबेस में INSERT के बाद आईडी कैसे प्राप्त करूं?