|
Bas de page | |
---|---|
Auteur | Sujet : [MySQL] Comment optimiser une requête pourtant simple ? [c'était moi] |
Publicité | Posté le 09-04-2004 à 16:54:59 |
gizmo | Euh... T'es au courant qu'aucune des trois requètes que tu montres ne donne les mêmes résultats? |
kalex | T'as essayé de comprendre au moins ? |
gizmo | oui, mais toi as-tu seulement compris ce que tu veux... |
kalex | La raison de ces comparaisons, c'est de chercher la meilleure optimisation interne de MySQL, si tu n'as pas compris...
Message édité par kalex le 09-04-2004 à 19:59:39 |
gizmo | produit cartésien. |
uriel blood pt.2 |
--------------- IVG en france |
kalex |
Je vois...
|
kalex |
Oui, mais les réponses trop laconiques ont le dont de m'énerver...
|
gizmo | Et tu te fouts de connaitre les autres champs? tu veux juste savoir s'il existe? Dans ce cas, réponse 2. Message édité par gizmo le 09-04-2004 à 19:09:03 |
Publicité | Posté le 09-04-2004 à 19:08:36 |
kalex | Réponce 2 ?
|
gizmo | je veux simplement dire que faire cela en une seule requète sans faire de jointure, et donc sans exploser ton temps de calcul, c'est simplement impossible. |
kalex | Merci.
|
gizmo | Non, le problème n'est pas là.
|
mrbebert |
Tant qu'on y est :
Message édité par mrbebert le 09-04-2004 à 20:32:36 |
kalex |
Je comprends bien, c'est très clair, merci.
|
kalex |
Ca, j'avais déjà compris ! |
gizmo |
|
kalex | Encore merci.
|
gizmo | Parce que limit est la dernière des choses qui soit évalué. |
kalex | J'ai surement l'air d'un boulay.
|
mrbebert | Ce n'est pas évident que la base en tienne compte au moment où elle détermine comment elle va traiter la requête (ce qu'indique l'explain).
|
kalex |
|
mrbebert | Effectivement, c'est curieux que @b ait une valeur |
kalex | C'est peut-être un manque d'optimisation (une sorte de bug en fait !) de MySQL ?
|
gizmo | quand je dis que limit est la dernière chose évaluée, dans ce cas, cela dépend si le SGDB est intelligent ou non.
|
kalex | Il ne s'agit, a priori, pas du cas bête puisque @a contient uniquement le nom de la première ligne (la seule retournée). S'il s'agissait du second cas UNION ALL devrait permettre de ne pas traiter les doublons ? Or le résultat est le même avec.
Message édité par kalex le 10-04-2004 à 00:43:44 |
gizmo |
|
kalex |
Ca ne retourne qu'une seule ligne (la 1ere de T1). Et les variables sont assignées comme précédemment. Message édité par kalex le 10-04-2004 à 01:16:39 |
gizmo | Dans ce cas, je ne vois qu'une solution: MySQL est encore une fois en dehors de la norme standard SQL. Il faut se plonger dans leur doc pour voir comment ils gèrent les union. |
kalex | Si je trouve une soluce, je la donnerais ici.
|
Publicité | Posté le |
Sujets relatifs | |
---|---|
Verifier une table MySQL ... Et les résultats ... | Java - Connexion MySQL |
[Oracle] Optimisaton requête | requete en PHP/MySQL sur deux base differentes ... |
[SQL] [Résolu] Requete avec COUNT et GROUP BY | recherche sur plusieurs tables MySQL |
[PHP/MYSQL] Créer table avec des champs issus de variables | [C] Un chat simple en C |
Requete SQL Oracle : Pourquoi ca ne marche pas ? | |
Plus de sujets relatifs à : [MySQL] Comment optimiser une requête pourtant simple ? [c'était moi] |