0

特定のテーブルをクエリする必要があります。テーブル構造を変更できません。基本的には次のようになります。

user
-- ---------- ----
id address_id name

address
-- ---
id zip

language
-- ----
id lang

languageidのエントリのは、ユーザーのと同じです。その主キーは と に基づいています。ユーザー上で可能です。 ididlangaddress_idnull

今、私は単一のクエリですべてを取得したいと考えています。私はもう試した:

SELECT
    p.name,
    l.lang,
    a.zip

FROM user p

JOIN language l ON p.id = l.id

LEFT JOIN address a ON p.address_id = a.id

WHERE p.id = :id

LIMIT 1

これは、1 つのことを除いて実際に機能します。ユーザーに接続されている最初の言語のみを返します。すべての言語を取得するにはどうすればよいですか?

編集

PHP PDO を使用して結果を取得しています。

$value = $stmt->fetch(PDO::FETCH_ASSOC);

間違いがありますか?

4

2 に答える 2

2
于 2013-08-23T13:32:32.973 に答える