添加左连接时,我的查询无法获得多个结果

时间:2015-07-09 02:35:50

标签: mysql join

我的没有左连接的查询会收集2个结果,当我添加左连接时我只获得1。

首先,这是我的问题:

KeyID |  UserID | Key
--------------------------
1     |    2    | 20fjewof
2     |    2    | eiwfjow2

现在我将反思我的一些表格: 的 cb_keys

ipID |  KeyID | Address
--------------------------
1    |    1   | 127.0.0.1
2    |    2   | 127.0.0.1

cb_allowedips

modkeyID |  KeyID | ActionID
--------------------------
1        |    1   | 1
2        |    2   | 4

cb_modulesinkey

id

所以我正在处理2个Key行,它们的标识符都是2(满足WHERE条件),每个键都有1个地址,最后每个键都有1个动作。我在我的数据库中有几个地址和操作,这就是为什么我在GROUP_CONCAT中使PHP变得更容易。

如果我要删除连接,只有我的SELECT,FROM和WHERE我将返回2行,我的目的是返回2行,但添加我想要做的小额外内容。现在,当我加入我的连接时,我只返回1行而不是2,即使它们都满足。

我做错了什么?

1 个答案:

答案 0 :(得分:1)

如果要返回两行,则按行id聚合,而不是用户ID:

GROUP BY cb_Keys.KeyID