Bonjour EVery Je suis nouveau à SQl. requête pour aboutir aux enregistrements suivants.Sélectionnez un enregistrement distinct, le filtrage ne fonctionne pas
J'ai une table avec des dossiers comme
c1 c2 c3 c4 c5 c6
1 John 2.3.2010 12:09:54 4 7 99
2 mike 2.3.2010 13:09:59 8 6 88
3 ahmad 2.3.2010 13:09:59 1 9 19
4 Jim 23.3.2010 16:35:14 4 5 99
5 run 23.3.2010 12:09:54 3 8 12
Je veux fecth uniquement les enregistrements. i.e seulement 1 dernier enregistrement par jour. Si les deux se produisent en même temps, trier par C1.so en 1 & 3 devrait chercher 3.
3 ahmad 2.3.2010 14:09:59 1 9 19
4 Jim 23.3.2010 16:35:14 4 5 99
J'ai un nouveau problème dans ce domaine. Si je filtre les enregistrements en fonction des conditions, le dernier enregistrement est manquant. J'ai essayé de nombreuses façons, mais il échoue toujours. Ici, update_log est ma table.
SELECT * FROM update_log t1
WHERE (t1.c3) =
(
SELECT MAX(t2.c3)
FROM update_log t2
WHERE DATEDIFF(dd,t2.c3, t1.c3) = 0
)
and t1.c3 > '02.03.2010' and t1.modified_at <= '22.03.2010'
ORDER BY t1.c3 ASC. Mais je ne suis pas en mesure de récupérer l'enregistrement
4 Jim 23.3.2010 16:35:14 4 5 99
Je ne sais pas ce résultat de la requête en seulement
3 ahmad 2.3.2010 14:09:59 1 9 19
Le format de la c3 colonne est datetime. Je pomper les données dans la colonne comme en utilisant $date = date("d.m.Y H:i",time());
- simple extraction de date d'aujourd'hui.
Une autre requête que j'ai essayée dans le même but.
select * from (select convert(varchar(10), c3,104) as date, max(c3) as max_date, max(c1) as Nr from update_log group by convert(varchar(10), c3,104)) as t2 inner join update_log as t1 on (t2.max_date = t1.c3 and convert(varchar(10), c3,104) = date and t1.[c1]= Nr) WHERE t1.c3 >= '02.03.2010' and t1.c3 <= '16.04.2010'
. J'ai même essayé ce way..the même erreur dernier enregistrement ne vient pas ..
Où est la colonne Modified_at dans votre tableau? – codingbadger