huidige datum vergelijken met start en eind datum
Piet Knaap
04/08/2016 09:49:10IK heb een mysql database met twee velden
start_date en end_date
Nu wil ik door middel van de huidige datum alleen de records terug krijgen die hier aan voldoen.
Ik heb het onderstaande zelf bedacht (zie sql_query). Alleen dan krijg ik niets terug. Als ik het gedeelte 'AND start_date <= '2016-08-04'' weglaat krijg ik wel iets terug alleen veel te veel records. Wat logisch is :)
sql_query
select * from Date WHERE start_date >= '2016-08-04' AND start_date <= '2016-08-04'
Voorbeeld database
start_date end_date
2016-08-03 00:00:00 2016-08-05 00:00:00
2016-08-04 00:00:00 2016-08-05 00:00:00
start_date en end_date
Nu wil ik door middel van de huidige datum alleen de records terug krijgen die hier aan voldoen.
Ik heb het onderstaande zelf bedacht (zie sql_query). Alleen dan krijg ik niets terug. Als ik het gedeelte 'AND start_date <= '2016-08-04'' weglaat krijg ik wel iets terug alleen veel te veel records. Wat logisch is :)
sql_query
select * from Date WHERE start_date >= '2016-08-04' AND start_date <= '2016-08-04'
Voorbeeld database
start_date end_date
2016-08-03 00:00:00 2016-08-05 00:00:00
2016-08-04 00:00:00 2016-08-05 00:00:00
Gewijzigd op 04/08/2016 09:52:51 door Piet Knaap
PHP hulp
16/11/2024 00:47:56Piet Knaap
04/08/2016 09:53:50Ivo P
04/08/2016 10:29:37moet een van de velden niet ENDDATE zijn in WHERE?
SELECT *
FROM tabel
WHERE CURRENT_DATE BETWEEN DATE(start_date) AND DATE(end_date)
SELECT *
FROM tabel
WHERE CURRENT_DATE BETWEEN DATE(start_date) AND DATE(end_date)
Piet Knaap
04/08/2016 10:31:47Als ik WHERE CURRENT_DATE BETWEEN DATE(start_date) AND DATE(end_date) gebruik krijg ik ook regels terug waarbij de begindatum al is geweest
Ivo P
04/08/2016 10:33:08maar de einddatum nog niet is geweest?
Beschrijf anders eens wat je precies wilt hebben, want doorgaans zoekt met bij zo'n query de lopende activiteiten. Jij kennelijk wat anders?
Toevoeging op 04/08/2016 10:34:58:
of zoek je wat vandaag start?
WHERE DATE(start_date) = CURRENT_DATE()
Beschrijf anders eens wat je precies wilt hebben, want doorgaans zoekt met bij zo'n query de lopende activiteiten. Jij kennelijk wat anders?
Toevoeging op 04/08/2016 10:34:58:
of zoek je wat vandaag start?
WHERE DATE(start_date) = CURRENT_DATE()
Piet Knaap
04/08/2016 10:41:10Thomas van den Heuvel
04/08/2016 13:48:22Ivo P op 04/08/2016 10:33:08:
Beschrijf anders eens wat je precies wilt hebben, want doorgaans zoekt met bij zo'n query de lopende activiteiten. Jij kennelijk wat anders?)
Ik zou hier inderdaad mee beginnen. Wat probeer je te bereiken? Of maak eens een tekeningetje op papier met een tijdslijn ofzo.