Projet

Général

Profil

Development #65362

Requêtes SQL sub-optimales

Ajouté par Pierre Ducroquet il y a presque 2 ans. Mis à jour il y a presque 2 ans.

Statut:
Fermé
Priorité:
Normal
Assigné à:
Version cible:
-
Début:
17 mai 2022
Echéance:
% réalisé:

0%

Temps estimé:
Patch proposed:
Oui
Planning:
Non

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

Révision 033f80f2 (diff)
Ajouté par Pierre Ducroquet il y a presque 2 ans

optimization: use SELECT 1 instead of SELECT count(*) (#65362)

Historique

#1

Mis à jour par Pierre Ducroquet il y a presque 2 ans

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.

#2

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.

#4

Mis à jour par Benjamin Dauvergne il y a presque 2 ans

  • Statut changé de Solution proposée à Solution validée
#5

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)

#6

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():
#7

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 ?

#8

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).

#9

Mis à jour par Transition automatique il y a presque 2 ans

  • Statut changé de Résolu (à déployer) à Solution déployée
#10

Mis à jour par Transition automatique il y a presque 2 ans

Automatic expiration

Formats disponibles : Atom PDF