Cette action est irreversible, confirmez la suppression du commentaire ?
Signaler le commentaire
Veuillez sélectionner un problème
Nudité
Violence
Harcèlement
Fraude
Vente illégale
Discours haineux
Terrorisme
Autre
Le Gaulois
Téo Path a écrit :
Je continue ma découverte des joies de php+mysql :-)
AMHA, ça serait nettement plus en charte dans fr.comp.applications.sgbd (Xpost + FU2 là-bas)
J'ai créé une Base de donnée et une table (en local), j'y ai adjoint plusieurs index dont certains multi-champs.
Mais là je bloque, je ne trouve pas comment faire une requête qui requiert les index ?
Avec les SGBD modernes, on fait de requêtes SQL qui indiquent ce qu'on souhaite obtenir et le SGBD se débrouille pour trouver le meilleur plan d'exécution. On n'a donc pas besoin de lui préciser d'utiliser tel index.
(Je ne sais pas à quel point MySQL est un SGBD "moderne")
Téo Path a écrit :
Je continue ma découverte des joies de php+mysql :-)
AMHA, ça serait nettement plus en charte dans
fr.comp.applications.sgbd
(Xpost + FU2 là-bas)
J'ai créé une Base de donnée et une table (en local), j'y ai
adjoint plusieurs index dont
certains multi-champs.
Mais là je bloque, je ne trouve pas comment faire une requête
qui requiert les index ?
Avec les SGBD modernes, on fait de requêtes SQL qui indiquent
ce qu'on souhaite obtenir et le SGBD se débrouille pour
trouver le meilleur plan d'exécution. On n'a donc pas besoin
de lui préciser d'utiliser tel index.
(Je ne sais pas à quel point MySQL est un SGBD "moderne")
Je continue ma découverte des joies de php+mysql :-)
AMHA, ça serait nettement plus en charte dans fr.comp.applications.sgbd (Xpost + FU2 là-bas)
J'ai créé une Base de donnée et une table (en local), j'y ai adjoint plusieurs index dont certains multi-champs.
Mais là je bloque, je ne trouve pas comment faire une requête qui requiert les index ?
Avec les SGBD modernes, on fait de requêtes SQL qui indiquent ce qu'on souhaite obtenir et le SGBD se débrouille pour trouver le meilleur plan d'exécution. On n'a donc pas besoin de lui préciser d'utiliser tel index.
(Je ne sais pas à quel point MySQL est un SGBD "moderne")
Pierre Goiffon
Téo Path wrote:
J'ai créé une Base de donnée et une table (en local), j'y ai adjoint plusieurs index dont certains multi-champs.
Mais là je bloque, je ne trouve pas comment faire une requête qui requiert les index ?
Peut-on utiliser plusieurs index ou vaut il mieux prévoir un index multi-champs spécifique à chaque requête ?
Votre question concerne plutôt le côté SGBD, je pense que vous obtiendrez plus de réponses sur fr.Comp.applications.sgbd par exemple... ou mieux, un forum dédié à MySQL ! En effet, chaque SGBD a ses particularités...
Téo Path wrote:
J'ai créé une Base de donnée et une table (en local), j'y ai adjoint
plusieurs index dont certains multi-champs.
Mais là je bloque, je ne trouve pas comment faire une requête qui
requiert les index ?
Peut-on utiliser plusieurs index ou vaut il mieux prévoir un index
multi-champs spécifique à chaque requête ?
Votre question concerne plutôt le côté SGBD, je pense que vous
obtiendrez plus de réponses sur fr.Comp.applications.sgbd par exemple...
ou mieux, un forum dédié à MySQL ! En effet, chaque SGBD a ses
particularités...
J'ai créé une Base de donnée et une table (en local), j'y ai adjoint plusieurs index dont certains multi-champs.
Mais là je bloque, je ne trouve pas comment faire une requête qui requiert les index ?
Peut-on utiliser plusieurs index ou vaut il mieux prévoir un index multi-champs spécifique à chaque requête ?
Votre question concerne plutôt le côté SGBD, je pense que vous obtiendrez plus de réponses sur fr.Comp.applications.sgbd par exemple... ou mieux, un forum dédié à MySQL ! En effet, chaque SGBD a ses particularités...
bruno at modulix
Téo Path wrote:
Bonjour à tous
Je continue ma découverte des joies de php+mysql :-)
J'ai créé une Base de donnée et une table (en local), j'y ai adjoint plusieurs index dont certains multi-champs.
Tes index sont-ils utiles ? Si un index n'est pas suffisament discriminant, il risque d'être franchement contre-productif. <tech> plus il y a de valeurs distinctes pour un champ, plus un index sur ce champs sera discriminant. Une clé unique est ce qu'on peut faire de mieux (il n'y a que des valeurs distinctes, donc une entrée d'index correspond à un seul enregistrement), un champs 'oui/non' ce qu'on peut faire de pire (deux entrées d'index seulement, chacune pointant sur =/- la moitié des enregistrements de la table). Dans le second cas, il sera plus rapide de faire un balayage direct de la table - donc de ne pas mettre d'index. </tech>
Mais là je bloque, je ne trouve pas comment faire une requête qui requiert les index ?
C'est le problème de ton SGBDR, pas le tien.
Peut-on utiliser plusieurs index ou vaut il mieux prévoir un index multi-champs spécifique à chaque requête ?
Il vaut mieux apprendre à utiliser un SGBDR - ce qui est un métier à part entière. Et accessoirement - comme d'autres l'ont déjà recommandé -, poster dans le newsgroup approprié.
En attendant, ne t'embêtes pas avec des index - attends de voir s'il y a *vraiment* des problèmes de perfs, et si oui lesquels *exactement*.
D'avance merci.
-- bruno desthuilliers python -c "print '@'.join(['.'.join([w[::-1] for w in p.split('.')]) for p in ''.split('@')])"
Téo Path wrote:
Bonjour à tous
Je continue ma découverte des joies de php+mysql :-)
J'ai créé une Base de donnée et une table (en local), j'y ai adjoint
plusieurs index dont certains multi-champs.
Tes index sont-ils utiles ? Si un index n'est pas suffisament
discriminant, il risque d'être franchement contre-productif.
<tech>
plus il y a de valeurs distinctes pour un champ, plus un index sur ce
champs sera discriminant. Une clé unique est ce qu'on peut faire de
mieux (il n'y a que des valeurs distinctes, donc une entrée d'index
correspond à un seul enregistrement), un champs 'oui/non' ce qu'on peut
faire de pire (deux entrées d'index seulement, chacune pointant sur =/-
la moitié des enregistrements de la table). Dans le second cas, il sera
plus rapide de faire un balayage direct de la table - donc de ne pas
mettre d'index.
</tech>
Mais là je bloque, je ne trouve pas comment faire une requête qui
requiert les index ?
C'est le problème de ton SGBDR, pas le tien.
Peut-on utiliser plusieurs index ou vaut il mieux prévoir un index
multi-champs spécifique à chaque requête ?
Il vaut mieux apprendre à utiliser un SGBDR - ce qui est un métier à
part entière. Et accessoirement - comme d'autres l'ont déjà recommandé
-, poster dans le newsgroup approprié.
En attendant, ne t'embêtes pas avec des index - attends de voir s'il y a
*vraiment* des problèmes de perfs, et si oui lesquels *exactement*.
D'avance merci.
--
bruno desthuilliers
python -c "print '@'.join(['.'.join([w[::-1] for w in p.split('.')]) for
p in 'onurb@xiludom.gro'.split('@')])"
Je continue ma découverte des joies de php+mysql :-)
J'ai créé une Base de donnée et une table (en local), j'y ai adjoint plusieurs index dont certains multi-champs.
Tes index sont-ils utiles ? Si un index n'est pas suffisament discriminant, il risque d'être franchement contre-productif. <tech> plus il y a de valeurs distinctes pour un champ, plus un index sur ce champs sera discriminant. Une clé unique est ce qu'on peut faire de mieux (il n'y a que des valeurs distinctes, donc une entrée d'index correspond à un seul enregistrement), un champs 'oui/non' ce qu'on peut faire de pire (deux entrées d'index seulement, chacune pointant sur =/- la moitié des enregistrements de la table). Dans le second cas, il sera plus rapide de faire un balayage direct de la table - donc de ne pas mettre d'index. </tech>
Mais là je bloque, je ne trouve pas comment faire une requête qui requiert les index ?
C'est le problème de ton SGBDR, pas le tien.
Peut-on utiliser plusieurs index ou vaut il mieux prévoir un index multi-champs spécifique à chaque requête ?
Il vaut mieux apprendre à utiliser un SGBDR - ce qui est un métier à part entière. Et accessoirement - comme d'autres l'ont déjà recommandé -, poster dans le newsgroup approprié.
En attendant, ne t'embêtes pas avec des index - attends de voir s'il y a *vraiment* des problèmes de perfs, et si oui lesquels *exactement*.
D'avance merci.
-- bruno desthuilliers python -c "print '@'.join(['.'.join([w[::-1] for w in p.split('.')]) for p in ''.split('@')])"
Téo Path
bruno at modulix vient de nous annoncer :
En attendant, ne t'embêtes pas avec des index - attends de voir s'il y a *vraiment* des problèmes de perfs, et si oui lesquels *exactement*.
Je sens que çà c'est un bon conseil, que je vais m'empresser de suivre ;-)
-- Teo Path http://www.hourdeaux.fr.st
bruno at modulix vient de nous annoncer :
En attendant, ne t'embêtes pas avec des index - attends de voir s'il y a
*vraiment* des problèmes de perfs, et si oui lesquels *exactement*.
Je sens que çà c'est un bon conseil, que je vais m'empresser de suivre ;-)
En attendant, ne t'embêtes pas avec des index - attends de voir s'il y a *vraiment* des problèmes de perfs, et si oui lesquels *exactement*.
D'avance merci.
Je reviens quand même à la charge.
Avec une liste d'enregistrements que je veux afficher par ordre alphabétique des noms et des prénoms.
Comment faire pour privilégier le tri par noms puis seulement après le tri par prénoms et non pas l'inverse ?
Bon çà va je crois avoir trouvé, merci
-- Teo Path http://www.hourdeaux.fr.st
Téo Path
Téo Path a formulé la demande :
Téo Path a pensé très fort :
bruno at modulix a formulé la demande :
En attendant, ne t'embêtes pas avec des index - attends de voir s'il y a *vraiment* des problèmes de perfs, et si oui lesquels *exactement*.
D'avance merci.
Je reviens quand même à la charge.
Avec une liste d'enregistrements que je veux afficher par ordre alphabétique des noms et des prénoms.
Comment faire pour privilégier le tri par noms puis seulement après le tri par prénoms et non pas l'inverse ?
Bon çà va je crois avoir trouvé, merci
Comme on est sur un forum et que çà peut servir à d'autres, même si c'est pas en charte, je donne quand même la réponse que j'ai trouvée et qui est tout à fait ce qu'il me fallait.
En attendant, ne t'embêtes pas avec des index - attends de voir s'il y a
*vraiment* des problèmes de perfs, et si oui lesquels *exactement*.
D'avance merci.
Je reviens quand même à la charge.
Avec une liste d'enregistrements que je veux afficher par ordre
alphabétique des noms et des prénoms.
Comment faire pour privilégier le tri par noms puis seulement après le tri
par prénoms et non pas l'inverse ?
Bon çà va je crois avoir trouvé, merci
Comme on est sur un forum et que çà peut servir à d'autres, même si c'est pas en charte,
je donne quand même la réponse que j'ai trouvée et qui est tout à fait ce qu'il me
fallait.
En attendant, ne t'embêtes pas avec des index - attends de voir s'il y a *vraiment* des problèmes de perfs, et si oui lesquels *exactement*.
D'avance merci.
Je reviens quand même à la charge.
Avec une liste d'enregistrements que je veux afficher par ordre alphabétique des noms et des prénoms.
Comment faire pour privilégier le tri par noms puis seulement après le tri par prénoms et non pas l'inverse ?
Bon çà va je crois avoir trouvé, merci
Comme on est sur un forum et que çà peut servir à d'autres, même si c'est pas en charte, je donne quand même la réponse que j'ai trouvée et qui est tout à fait ce qu'il me fallait.
En attendant, ne t'embêtes pas avec des index - attends de voir s'il y a *vraiment* des problèmes de perfs, et si oui lesquels *exactement*.
D'avance merci.
Je reviens quand même à la charge.
Avec une liste d'enregistrements que je veux afficher par ordre alphabétique des noms et des prénoms.
Comment faire pour privilégier le tri par noms puis seulement après le tri par prénoms et non pas l'inverse ?
select (...) order by nom, prenom;
Sérieusement, il y a combien d'enregistrements dans ta liste ? Parce que d'ici à ce que ça vaille le coup de s'inquiéter de ce genre de détail, AMHA, tu a le temps de voir venir !-)
-- bruno desthuilliers python -c "print '@'.join(['.'.join([w[::-1] for w in p.split('.')]) for p in ''.split('@')])"
Téo Path wrote:
bruno at modulix a formulé la demande :
En attendant, ne t'embêtes pas avec des index - attends de voir s'il y a
*vraiment* des problèmes de perfs, et si oui lesquels *exactement*.
D'avance merci.
Je reviens quand même à la charge.
Avec une liste d'enregistrements que je veux afficher par ordre
alphabétique des noms et des prénoms.
Comment faire pour privilégier le tri par noms puis seulement après le
tri par prénoms et non pas l'inverse ?
select (...) order by nom, prenom;
Sérieusement, il y a combien d'enregistrements dans ta liste ? Parce que
d'ici à ce que ça vaille le coup de s'inquiéter de ce genre de détail,
AMHA, tu a le temps de voir venir !-)
--
bruno desthuilliers
python -c "print '@'.join(['.'.join([w[::-1] for w in p.split('.')]) for
p in 'onurb@xiludom.gro'.split('@')])"
En attendant, ne t'embêtes pas avec des index - attends de voir s'il y a *vraiment* des problèmes de perfs, et si oui lesquels *exactement*.
D'avance merci.
Je reviens quand même à la charge.
Avec une liste d'enregistrements que je veux afficher par ordre alphabétique des noms et des prénoms.
Comment faire pour privilégier le tri par noms puis seulement après le tri par prénoms et non pas l'inverse ?
select (...) order by nom, prenom;
Sérieusement, il y a combien d'enregistrements dans ta liste ? Parce que d'ici à ce que ça vaille le coup de s'inquiéter de ce genre de détail, AMHA, tu a le temps de voir venir !-)
-- bruno desthuilliers python -c "print '@'.join(['.'.join([w[::-1] for w in p.split('.')]) for p in ''.split('@')])"
Téo Path
Dans son message précédent, bruno at modulix a écrit :
Téo Path wrote:
bruno at modulix a formulé la demande :
En attendant, ne t'embêtes pas avec des index - attends de voir s'il y a *vraiment* des problèmes de perfs, et si oui lesquels *exactement*.
D'avance merci.
Je reviens quand même à la charge.
Avec une liste d'enregistrements que je veux afficher par ordre alphabétique des noms et des prénoms.
Comment faire pour privilégier le tri par noms puis seulement après le tri par prénoms et non pas l'inverse ?
select (...) order by nom, prenom;
Sérieusement, il y a combien d'enregistrements dans ta liste ? Parce que d'ici à ce que ça vaille le coup de s'inquiéter de ce genre de détail, AMHA, tu a le temps de voir venir !-)
Pour l'instant pas grand chose :-), zéro pour être précis.
Mais il s'agit d'un annuaire professionnel, à terme, autour des 10.000 enregistrements
-- Teo Path http://www.hourdeaux.fr.st
Dans son message précédent, bruno at modulix a écrit :
Téo Path wrote:
bruno at modulix a formulé la demande :
En attendant, ne t'embêtes pas avec des index - attends de voir s'il y a
*vraiment* des problèmes de perfs, et si oui lesquels *exactement*.
D'avance merci.
Je reviens quand même à la charge.
Avec une liste d'enregistrements que je veux afficher par ordre
alphabétique des noms et des prénoms.
Comment faire pour privilégier le tri par noms puis seulement après le
tri par prénoms et non pas l'inverse ?
select (...) order by nom, prenom;
Sérieusement, il y a combien d'enregistrements dans ta liste ? Parce que
d'ici à ce que ça vaille le coup de s'inquiéter de ce genre de détail,
AMHA, tu a le temps de voir venir !-)
Pour l'instant pas grand chose :-), zéro pour être précis.
Mais il s'agit d'un annuaire professionnel, à terme, autour des 10.000 enregistrements
Dans son message précédent, bruno at modulix a écrit :
Téo Path wrote:
bruno at modulix a formulé la demande :
En attendant, ne t'embêtes pas avec des index - attends de voir s'il y a *vraiment* des problèmes de perfs, et si oui lesquels *exactement*.
D'avance merci.
Je reviens quand même à la charge.
Avec une liste d'enregistrements que je veux afficher par ordre alphabétique des noms et des prénoms.
Comment faire pour privilégier le tri par noms puis seulement après le tri par prénoms et non pas l'inverse ?
select (...) order by nom, prenom;
Sérieusement, il y a combien d'enregistrements dans ta liste ? Parce que d'ici à ce que ça vaille le coup de s'inquiéter de ce genre de détail, AMHA, tu a le temps de voir venir !-)
Pour l'instant pas grand chose :-), zéro pour être précis.
Mais il s'agit d'un annuaire professionnel, à terme, autour des 10.000 enregistrements