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

तालिका दिनांक स्तंभ की तुलना जनरेट की गई दिनांक सूची के साथ - MYSQL

दूसरा अद्यतन:

अब मैं इसे हर संस्करण में काम कर रहा हूं:

select
*
from
Payroll
inner join 
(
SELECT DATE(DATE_ADD('2012-10-05', 
INTERVAL @i:[email protected]+14 DAY) ) AS dateP
FROM Payroll, (SELECT @i:=0) r
where @i < DATEDIFF(now(), date '2012-10-05') 
) sq on Payroll.datestamp = sq.dateP

आपको बस क्वेरी के अंदर वेरिएबल को इनिशियलाइज़ करना है।

अद्यतन करें:

अजीब बात यह है कि यह मेरी स्थानीय मशीन पर बिना किसी समस्या के काम करता है (संस्करण 5.1.41-3ubuntu12.7-लॉग), लेकिन आपके SQLfiddle में नहीं।

set @i:= 0;
select
*
from
Payroll
inner join 
(
SELECT DATE(DATE_ADD('2012-10-05', 
INTERVAL @i:[email protected]+14 DAY) ) AS dateP
FROM Payroll
where @i < DATEDIFF(now(), date '2012-10-05') 
) sq on Payroll.datestamp = sq.dateP

अद्यतन की समाप्ति

क्या आपने इसे इस तरह आजमाया है?

set @i:= 0;

SELECT distinct datestamp FROM payroll
WHERE STR_TO_DATE(datestamp, '%M, %d %Y %H:%i:%f') in (
SELECT DATE(ADDDATE('2012-10-05', 
INTERVAL @i:[email protected]+14 DAY) ) AS dateP
FROM payroll
where @i < DATEDIFF(now(), date '2012-10-05') 
)
;

मेरा अनुमान है, कि DATE() फ़ंक्शन विफल हो जाता है, क्योंकि आप varchar हैं (है ना?) तिथि आईएसओ प्रारूप में नहीं है। इसलिए आपको STR_TO_DATE() use का उपयोग करना होगा समारोह।

STR_TO_DATE() के सटीक उपयोग के लिए पढ़ें यहां और यहां . मैं माइक्रोसेकंड भाग के बारे में निश्चित नहीं हूं।




  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. मैं php . का उपयोग कर डेटाबेस (mysql) में रेडियो बटन का मान अपडेट करना चाहता हूं

  2. वर्चर को आज तक कैसे बदलें/कास्ट करें?

  3. एकाधिक रेल ऐप, एकल MySQL डेटाबेस

  4. IIS में .NET MySQL डेटा कनेक्टर के लिए कनेक्शन पूलिंग की निगरानी कैसे करें

  5. MySql - होने बनाम कहाँ