Ci-dessous, les différences entre deux révisions de la page.
Les deux révisions précédentes Révision précédente Prochaine révision | Révision précédente Dernière révision Les deux révisions suivantes | ||
devweb:mysql [23-01-2015 09:07] edmc73 |
devweb:mysql [23-03-2020 11:15] edmc73 [Cas d'une table de config avec une date] |
||
---|---|---|---|
Ligne 7: | Ligne 7: | ||
* http:// | * http:// | ||
+ | |||
+ | |||
+ | ===== Cas d'une table de config avec une date ===== | ||
+ | |||
+ | ^ id ^ user_id | ||
+ | | 1 | 1 | 2020-03-10 | toto | | ||
+ | | 2 | 1 | 2020-03-20 | super toto | | ||
+ | | 3 | 2 | 2020-01-01 | tata | | ||
+ | |||
+ | je veux les derniers nom des utilisateurs | ||
+ | |||
+ | <code sql> | ||
+ | select user_id, name | ||
+ | from users t1 | ||
+ | WHERE EXISTS(SELECT 1 | ||
+ | FROM users t2 | ||
+ | WHERE t2.user_id = t1.user_id | ||
+ | GROUP BY t2.user_id | ||
+ | | ||
+ | </ | ||
+ | |||
+ | ^ user_id ^ name ^ | ||
+ | | 1 | super toto | | ||
+ | | 2 | tata | | ||
+ | |||
+ | Par contre, si vous avez des date dans le futur, il faudra utiliser cette requête | ||
+ | <code sql> | ||
+ | select user_id, name | ||
+ | from users t1 | ||
+ | WHERE EXISTS(SELECT 1 | ||
+ | FROM users t2 | ||
+ | WHERE t2.user_id = t1.user_id and t2.date< | ||
+ | GROUP BY t2.user_id | ||
+ | | ||
+ | </ |