2016-08-21 7 views
0

から列を取得します:typenPHP MySQLiを、私は次の表持つ外部キー

'auktionen' 

id|uid|typ(FK)|min|max|menge|... 


'typen' 

id|typ 
1|Hack 
2|Schredder 

typを私が取得したいと思いちょうどtextutal表現、です。

$prep_stmt = "SELECT anzeigentyp, typ, holzart, 
qualitaet, rinde, min, max, menge FROM auktionen WHERE uid = ?"; 

$stmt = $mysqli->prepare($prep_stmt); 
$stmt->bind_param('i', $user_id); 
$stmt->execute(); 
$stmt->bind_result($anzeigentyp, $typ, $holzart, $qualitaet, $rinde, $min, $max, $menge); 
$stmt->store_result(); 

私のすべての結果をフェッチするとき、参照ID(1の場合)の代わりに「ハック」を取得したいと考えています。私は達成するためにいくつかのJOINが必要だと思うし、成功なしでこれを試してみた:

$prep_stmt = "SELECT anzeigentyp, typen.typ, holzart, 
qualitaet, rinde, min, max, menge FROM auktionen WHERE uid = ? 
JOIN typen ON auktionen.typ = typen.typ"; 

これを行う正しい方法は何ですか?

+0

ちょうどコピー、ペースト誤差を、加入しなければなりません申し訳ありません – 4ndro1d

答えて

1

あなたが最後にwhere句を移動し、対応する列typen.idauktionen.typ

select a.anzeigentyp, t.typ, a.holzart, a.qualitaet, a.rinde, a.`min`, a.`max`, a.menge 
from auktionen a 
join typen t on t.id = a.typ 
where ... 
+0

私が参加した結果を得るために選択する必要がありますか? SELECT *を使用すると、最後に列として追加されているのがわかります。列にはtypという名前も付けられているため、同じ名前を持つ2つの列があり、typをSELECTしようとすると明白なエラーが発生します – 4ndro1d

関連する問題