我有兩個表:兩個表,顯示從一個多個結果相匹配的ID
post_languages有以下的列:languageID,languageName
post_to_languages用:帖子ID ,postLanguage
我想要實現的是顯示與帖子相關的所有語言。
例如:發表1,語言:法語,俄語
也許我的做法是錯誤的,但是這是我試過的方法之一:
//get language id
$stmt2 = $db->prepare('SELECT languageID FROM post_to_languages WHERE postID = :postID');
$stmt2->execute(array(':postID' => $row['postID']));
//Count total number of rows
$rowCount2 = $stmt2->rowCount();
if ($rowCount2 > 0) {
$row2 = $stmt2->fetch(PDO::FETCH_ASSOC);
foreach ($row2 as $langID) {
$stmt3 = $db->prepare('SELECT languageName FROM post_languages WHERE languageID = :languageID');
$stmt3->execute(array(':languageID' => $langID));
$row3 = $stmt3->fetch();
$lang_string = $row3['languageName'];
}
} else {
$lang_string = "Unknown";
}
不要緊,我試過了,我只能獲得一種語言。也許我應該先選擇ID來選擇post_to_languages。
是的,這是正確的答案,適用於子查詢和內部連接,不能滿足答案,但是,謝謝 –