2012-10-15 4 views
1

J'ai 2 tables. catégories et boutiques. Les ateliers de table ont des colonnes, à savoir des catégories. Les catégories ont des identifiants de magasins différents. Les catégories de tableau ont des colonnes, à savoir les identifiants et les parent. Les ID ont des identifiants de magasins et les parents ont parentid pour chaque boutique.obtenir une valeur d'une table mysql en fonction de la valeur d'une autre table mysql

Maintenant, ma tâche consiste à imprimer l'ID parent des différents identifiants de la colonne catégorie dans la table de la boutique. S'il vous plaît aidez-moi

colonne de catégorie contient des valeurs comme "24,36,32" dans un champ et un autre domaine comme "22,33,44".

<?php 
$con = mysql_connect("localhost", "abc", "1234"); 
if (!$con) 
    { 
    die('Could not connect: ' . mysql_error()); 
    } 

$db_selected = mysql_select_db("db",$con); 
$sql = "SELECT categories from shops"; 
$array = mysql_query($sql,$con); 
while($row=mysql_fetch_array($array)){ 
foreach($row as $value){ 
    $query="SELECT parent FROM categories where categories.id=$value.'<br/>'."; 
    echo $query; 
    } 
    } 
mysql_close($con); 
?> 
+0

Vous avez littéralement '24,36,32' dans un seul champ/enregistrement? Cela complique énormément les choses ... vous devriez envisager de normaliser vos tables si c'est le cas. –

+0

comment faire cela? – user1694724

+0

http://en.wikipedia.org/wiki/Database_normalization –

Répondre

1

Vous devez utiliser join

SELECT A.ForeignId, B.Id 
FROM tablea A 
LEFT JOIN tableb B ON B.Id=A.ForeignId 

Tutorial

Questions connexes