[sql] Tri d'une table selon un champ dans une autre table

WRInaute accro
Bonjour,

Le handicapé du sql est de retour...

Le problème du jour :

Soit une table "videos" dont les enregistrements contiennent un champ "id_pays" (identifiant numérique).
Je veux classer cette table par ordre alpha du pays sachant que bien sûr l'ordre numérique n'est pas l'ordre alphabétique de la table "pays" constituée de id_pays et nom_pays (et c'est sur ce champ que je veux trier).

Comment peut-on écrire ce type de ORDER BY ?

Merci d'avance,

Michaël
 
WRInaute accro
Essaie de simplement faire une jointure avec la table concernée, comme ça tu as plus qu'à faire un ORDER BY nompays ;)

Edit: grillé :p
 
WRInaute accro
Bool a dit:
Hello,

bah "order by nom_pays"...
qu'est ce qui te pose soucis là dedans ? :S

nom_pays n'est pas dans la table que je veux trier.

Edit :

Exemple "videos"
id_vid id_pays
1 1
2 1
3 2
4 4

Exemple "pays"
id_pays nom_pays
1 France
2 Allemagne
3 Turquie
4 Chine
 
WRInaute accro
alors donc si tu as l'id_pays dans ta table A et le nom de ton pays + l'id de ton pays dans une table B

C'est simple, tu vas faire un croisement entre les deux en faisant la correspondance entre les id qui sont identiques :)

Code:
SELECT A.id_pays FROM A,B WHERE A.id_pays = B.id_pays ORDER BY B.nom_pays

Encore grillé :p mais j'ai les explications en + moi :mrgreen:
 
Discussions similaires
Haut