{MySQL} besoin d'aide requete multiple

Bonjour !!

alors voilà j'ai une premiere table USERS

ID | NOM |PRENOM |CP |VILLE |
0 | Truc |Blabla |75018 |PARIS |
1 | Machin |Etc... |01000 | Bourg-en-Bresse|

déjà, le 0 devant le code postal saute dans le cas (1), mais bon y'a des parades. je continue :
ma 2ème table =

ID | DEPT |REGION |
75 | Paris |IDF |
54 | Meurthe-et Moselle |LORRAINE|
55 | Meuse |LORRAINE|

Ce que je veux faire = récupérer le code postal de ma table USER moins les 3 derniers caractères
ça j'y arrive avec substr($users[3],0,-3) et comparer ce machin à mes départements
pour n'afficher QUE LES UTILISATEURS DU DEPARTEMENT 75 PAR EXEMPLE.
Voila le but au final.

Merci de m'aider, je deviens chauve là...
Configuration: Windows XP Internet Explorer 7.0

4 réponses

  1. yep
    alors j'ai écrit ca =

    $userregion=mysql_query("SELECT * FROM `users`, `geographie` WHERE geographie.id='".substr($userregion[9],0,-3)."'")or die ("erreur req ".mysql_error());

    while ($resultat=mysql_fetch_array($userregion)){
    echo "$resultat[0], $resultat[1], $resultat[2], $resultat[3]<br>";}?>

    userregion[9] correspond à la colonne code postal
    je n'ai pas d'erreur visiblement
    mais impossible d'afficher les résultats !!

    -_-' je suis maudit
    0
    1. T'as raison : chuis un gros nul, même pas capable de recopier ton exemple

      j'aurais du écrire :
      select nom, prenom, dept
      from users, la_table_sans_nom
      where id = substr(cp, 1, 2)

      que tu aurais corrigé en :
      select nom, prenom, dept
      from users, geographie
      where id = substr(cp, 1, 2)
      0
      1. hum...
        WHERE cp = substr(cp, 1, 2)

        ok pour la table USERS, mais pour ma table GEOGRAPHIE il n'y a pas de champ CP
        en fait le numero du departement pour la table GEOGRAPHIE , c'est l'ID...
        0
        1. Salut,

          Ce n'est pas une comparaison mais une jointure.
          ex
          select nom, prenom, dept
          from users, la_table_sans_nom
          where dept = substr(cp, 1, 2)

          mais pour être sûr que ça fonctionne, mieux vaut définir cp en alpha et nom numérique (pour pouvoir utiliser substr) et dept aussi (ie le département de l'ariège: 09 en alpha et 9 en numérique)
          0