1

2 つのテーブルがあり、MySQL クエリを機能させることができません。

First Table users:
user_id name
------------
1       Bob
2       Alice

Second Table fields:
id unser_id field_id value
-----------------------------
1  1        4           foo
2  1        5           10
3  2        4           bar

ここで、次のようにテーブルを結合したいと思います。

[0] => (
          [user_id] => 1
          [name] => Bob
          [fields] => (
                         [4] => foo
                         [5] => 10
                      )
[1] => (
          [user_id] => 2
          [name] => Alice
          [fields] => (
                         [4] => bar
                      )
       )

どうもありがとう!

私は試した:

SELECT u.user_id, 
       u.name 
FROM   users as u 
INNER JOIN fields as f on u.user_id = d.user_id

しかし、私はすべてのユーザーに対して最初のフィールド エントリだけを取得します。

4

2 に答える 2

0
select u.user_id,u.name,f.field_id,f.value from users u LEFT JOIN fields f ON u.user_id = f.unser_id
于 2013-10-21T18:23:48.090 に答える
0
SELECT user_id,name,GROUP_CONCAT(value SEPARATOR ',')as field FROM users u JOIN fields f 
ON u.user_id=f.unser_id GROUP BY user_id

たぶん、このようなものですか?

于 2013-10-21T18:24:23.290 に答える