J'essaie de sélectionner des données d'une table, en utilisant deux champs de date (startdate et enddate). Avec les deux champs de date dans la clause where, aucun résultat n'est renvoyé, avec le champ startdate, les résultats sont renvoyés, que se passe-t-il? Quelqu'un peut-il aider à ce dilemneRequête SQL sélectionner des données entre deux champs de date
Mon code est:
SELECT WPP.USERID,
WPI.EMAIL,
WPI.FIRSTNAME,
WPI.LASTNAME,
WPI.INSTITUTION
FROM WEBPROGRAMPARTICIPANTS WPP
JOIN WEBPERSONALINFO WPI ON WPP.USERID = WPI.USERID
JOIN WEBPROGRAMS WP ON WPP.PROGRAMCODE = WP.PROGRAMCODE
WHERE CONFIRMED = 1
AND WP.PROGRAMTYPE IN ('1')
AND WP.PROGRAMSTARTDATE >= '2009-01-02'
AND WP.PROGRAMENDDATE < '2009-09-15'
GROUP BY WPP.USERID,
WPI.EMAIL,
WPI.FIRSTNAME,
WPI.LASTNAME,
WPI.INSTITUTION
HAVING COUNT(WPP.PROGRAMCODE) > 1
ORDER BY WPP.USERID,
WPI.EMAIL
EDIT:
ici est un jeu de résultats pour regarder
USERID PROGRAMSTARTDATE PROGRAMENDDATE
------ ----------------------- -----------------------
26167 2009-03-09 00:00:00.000 2009-06-12 00:00:00.000
26362 2009-03-09 00:00:00.000 2009-06-12 00:00:00.000
26411 2009-03-09 00:00:00.000 2009-06-12 00:00:00.000
26491 2009-03-09 00:00:00.000 2009-06-12 00:00:00.000
Afficher les lignes renvoyées lorsqu'une date est supprimée (seules quelques lignes et uniquement les colonnes userid, programstartdate et programenddate sont nécessaires). –
Est-il possible qu'aucun des programmes confirmés de type 1 ne commence le 2 janvier 2009 ou après? –
en ajoutant à la suggestion d'Eric J., lors de la sélection des lignes, trié par WP.PROGRAMSTARTDATE desc – akf