如何查询以仅显示另一个表中具有字段的关系id的位置。 示例我的解释表是:
在表用户中
+--------+------------+
| id | username |
+--------+------------+
| 1 |zuck |
| 2 |renold |
| 3 |arby |
| | |
在表类
中+--------+------------+------------+
| id | user_id | class_name |
+--------+------------+------------+
| 1 | 1 | ABC |
| 2 | 1 | EFG |
| 3 | 1 | HIJ |
| 4 | 2 | KLM |
| 5 | 2 | NOP |
我希望得到如下结果:
Array
(
[0] => Array
(
[id] => 1
[username] => zuck
[class] => Array
(
[0] => array(
[id] => 1
[class_name] => ABC
)
[1] => array(
[id] => 2
[class_name] => EFG
)
[2] => array(
[id] => 3
[class_name] => HIJ
)
)
)
[1] => Array
(
[id] => 2
[username] => renold
[class] => Array
(
[0] => array(
[id] => 4
[class_name] => KLM
)
[1] => array(
[id] => 5
[class_name] => NOP
)
)
)
)
因此,用户名 arby 未显示,因为他在表类中没有关系。在表类中,没有 user_id 3 。因此,仅显示用户 zuck 和 renold 。 我尝试查询左连接,外连接,内连接,但没有成功: - (
感谢您的帮助。
答案 0 :(得分:-1)
SELECT Users.username,Class.class_name FROM Users INNER JOIN Class ON Users.id = Class.user_id;