繁体   English   中英

SQL group_concat删除左联接

SQL group_concat remove left join

提示:本站收集StackOverFlow近2千万问答,支持中英文搜索,鼠标放在语句上弹窗显示对应的参考中文或英文, 本站还提供   中文繁体   英文版本   中英对照 版本,有任何建议请联系yoyou2525@163.com。

我有这两张桌子

 FunctionName | value
 -------------+---------
 intensity    |  0
 status       |  NULL

 FunctionName | StatusName 
 -------------+------------
 status       |  ON        
 status       |  Off         

我正在使用此查询:

SELECT 
    Functions.FunctionName, Functions.value,
    GROUP_CONCAT(FunctionsWithStatus.StatusName)
FROM
    Functions
LEFT JOIN
    FunctionsWithStatus ON Functions.FunctionName = FunctionsWithStatus.Functionsname

结果是:

Name   | value | group_concat
status | 0     | off,on

我还如何检索“强度”的值并得到如下结果:

Name      | value | group_concat
intensity |  0    |  NUll
status    |  0    | off,on
2 个回复

添加Group by应执行以下工作:

SELECT Functions.FunctionName,Functions.value,group_concat(FunctionsWithStatus.StatusName)
from  Functions
left join  FunctionsWithStatus on Functions.FunctionName = FunctionsWithStatus.Functionsname
Group by Functions.FunctionName

您的查询格式不正确。 您将未聚合的列与聚合的列混合在一起。 MySQL将其视为没有group by的聚合查询,该查询仅返回一行。 未聚合列的值来自不确定的行。

您应在group by包括所有未聚合的列(不仅是一个好主意,而且是标准SQL):

select f.FunctionName, f.value, group_concat(fws.StatusName)
from Functions f left join
     FunctionsWithStatus fws
     on f.FunctionName = fws.Functionsname
group by f.FunctionName, f.value;
1 左联接的group_concat太慢了

我有一个歌曲库和一个有效的查询,该查询连接了多个表并将所有song_id,song_title等返回到一个大表中,如下所示: 我想将具有多个人声/作曲家的歌曲合并为一行: 我是用group_concat()函数完成的,但是它太慢了。 没有group_concat,我的查询只需要 ...

2 在左联接中使用group_concat

我想我可能想对我的代码偷偷摸摸:p我正在尝试将2个表链接在一起,其中一个表包含1行,而另一个表则包含多个表。 但是我只想为第一个表返回一行,另一表返回。 因此,我尝试使用GROUP_CONCAT将我的GROUP_CONCAT更改为单行,如下所示: 然后,我可以将其分解。 我认为 ...

3 SQL查询group_concat与联接

我试图将三个表与一个基于Int = Json的查询联接起来问题是,查询仅显示一条记录,而由于group_concat而忽略了另一条记录 我在sql中不太好,我知道这不是正确的方法,使用外键是解决该问题的正确方法,无论如何我都将此作为一种学习。 如果您有任何想法,请任何一个分享 ...

5 使用group_concat选择多选值并左联接

所以我正在使用PHP和MySQL创建一个简单的Movies数据库。 我有两个表: 电影 电影流派 这是我的查询 这是我目前得到的结果: 我期望的输出: 这可能吗?如果可以,怎么办? ...

6 Data.table左联接和聚合/连接/ group_concat

我有这样的表: 我可以进行左联接和串联,但是我只希望X中的每一行都有一个输出行。 如何摆脱B多余的行? 我希望它在Id / TxId上是唯一的。 即 如果我按照eddi的意见进行评论: 我得到正确的结果。 但是,如果我尝试添加其他列,则它不起作用(我得到的结 ...

7 带GROUP_CONCAT的sql

我正在运行此SQL查询 唯一的问题是我只得到第一行... 我有图片表,客户表(以我在图片中获得的ID表示客户的名字),喜欢表(在图片上“喜欢”的人)和评论(在桌子上写“评论”的人) ...

2012-08-28 14:03:21 1 273   mysql
8 Group_Concat和内部联接

我写了一个查询,但试图引用group_concat()函数中的另一个表,但不确定如何执行。 尝试了很多方法,只得到错误。 这是工作查询: ItemList返回所需的结果: 我想要做的是拥有另一个表(类别)中返回的ID附带的名称,例如: 任何帮助都会很棒。 ...

9 选择内部联接,sql和php的group_concat

我有以下查询: 返回我这个数组: 我应该如何正确查询数据库? 感谢考虑到我有3个表(产品,访问权和卖方)。 我想要实现的是将一种或多种产品归因于(卖方)卖方。 以及我的下拉列表填充代码的外观如何? 谢谢! ...

10 SQL 使用 group_concat

我有 3 张桌子: 角色: ID 姓名用户身份 1 总统 1 2 首席 1 3 队长 1 4 总统 2 5 队长 3 团体: ID 姓名用户身份 1 测试1 1 2 测试2 3 3 测试3 1 4 测试1 2 5 测试3 2 用户 ID 用户名 1 用户1 2 用 ...

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2022 STACKOOM.COM