ठीक है, मैं आपके डेटाबेस संरचना को नहीं जानता, लेकिन मान लें कि यह कुछ इस तरह है:
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ए>