我的没有左连接的查询会收集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,即使它们都满足。
我做错了什么?
答案 0 :(得分:1)
如果要返回两行,则按行id聚合,而不是用户ID:
GROUP BY cb_Keys.KeyID