Ci-dessous, les différences entre deux révisions de la page.
| Les deux révisions précédentesRévision précédenteProchaine révision | Révision précédente | ||
| devweb:mysql [23-03-2020 09:49] – [Cas d'une table de config avec une date] edmc73 | devweb:mysql [15-04-2021 12:28] (Version actuelle) – edmc73 | ||
|---|---|---|---|
| Ligne 31: | Ligne 31: | ||
| | 1 | super toto | | | 1 | super toto | | ||
| | 2 | tata | | | 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 | ||
| + | | ||
| + | </ | ||
| + | |||
| + | |||
| + | Variantes de la 1ère requête qui semble plus rapide | ||
| + | <code sql> | ||
| + | select t1.user_id, | ||
| + | from users as t1, | ||
| + | ( | ||
| + | select user_id, MAX(date) as date | ||
| + | from users | ||
| + | group by user_id | ||
| + | ) as t2 | ||
| + | where | ||
| + | t1.user_id=t2.user_id and t1.date=t2.date | ||
| + | </ | ||