Development #65362
Requêtes SQL sub-optimales
0%
Description
J'ai observé à plusieurs reprises sur des serveurs la présence de requêtes
SELECT count(*) FROM users;
Or, après lecture du code, il se trouve que les requêtes sont utilisées uniquement pour vérifier la présence d'un élément dans la table. On peut donc les réécrire
SELECT 1 FROM users LIMIT 1;plutôt.
Fichiers
Révisions associées
Historique
Mis à jour par Pierre Ducroquet il y a presque 2 ans
- Fichier 0001-optimization-use-SELECT-1-instead-of-SELECT-count-65.patch 0001-optimization-use-SELECT-1-instead-of-SELECT-count-65.patch ajouté
- Statut changé de Nouveau à Solution proposée
- Patch proposed changé de Non à Oui
Je ne suis pas content avec le nom que j'ai pris là, mais j'ai pas trouvé mieux... J'ai hésité un peu avec is_empty, mais je suis pas convaincu.
Mis à jour par Benjamin Dauvergne il y a presque 2 ans
Pierre Ducroquet a écrit :
Je ne suis pas content avec le nom que j'ai pris là, mais j'ai pas trouvé mieux... J'ai hésité un peu avec is_empty, mais je suis pas convaincu.
Pour le nom c'est le mieux, ça correspond à l'équivalent en Django, ça nous parlera plus.
Mis à jour par Pierre Ducroquet il y a presque 2 ans
- Fichier 0001-optimization-use-SELECT-1-instead-of-SELECT-count-65.patch 0001-optimization-use-SELECT-1-instead-of-SELECT-count-65.patch ajouté
Oubli de ma part, black...
Mis à jour par Benjamin Dauvergne il y a presque 2 ans
- Statut changé de Solution proposée à Solution validée
Mis à jour par Pierre Ducroquet il y a presque 2 ans
- Statut changé de Solution validée à Résolu (à déployer)
Et c'est dans main.
commit 033f80f2f2154e1d0e3ec89330faa4b3d88e62af (HEAD -> main, origin/main, origin/HEAD, wip/65362-sql-exists) Author: Pierre Ducroquet <pducroquet@entrouvert.com> Date: Tue May 17 18:10:20 2022 +0200 optimization: use SELECT 1 instead of SELECT count(*) (#65362)
Mis à jour par Frédéric Péters il y a presque 2 ans
Sur le style,
if not (FormDef.exists()):
on écrira plutôt
if not FormDef.exists():
Mis à jour par Pierre Ducroquet il y a presque 2 ans
Frédéric Péters a écrit :
Sur le style,
[...]
on écrira plutôt
[...]
Arf, comme ça avait été approuvé, j'ai mergé. Tu veux que je soumette un nouveau patch ici, ou je pousse une correction directement dans main ?
Mis à jour par Frédéric Péters il y a presque 2 ans
Oui j'ai fait mon commentaire en ayant vu que ça avait été poussé, ça n'est pas bien important, c'était surtout pour les prochaines fois. (mais si tu veux faire un patch pour modifier ça, sûr, welcome).
Mis à jour par Transition automatique il y a presque 2 ans
- Statut changé de Résolu (à déployer) à Solution déployée
optimization: use SELECT 1 instead of SELECT count(*) (#65362)