Mysql group_concat与插入和限制一起使用时的行为

诺曼

我有点困惑。

我有table_a和table_b,并运行下面的SQL。

table_a

"id"    "addedUser" "addedName"
"1"     "1"         "james"
"2"     "1"         "kirk"
"3"     "1"         "lars"
"4"     "2"         "michael"

table_b

"id"    "userName"  "userDisplay"   "userFreinds"
"1"     "norman"    "james"         "james,kirk,lars"

insert into table_b (
userName,
userDisplay,
userFreinds
) select 'norman', addedName, group_concat(addedName) from table_a where addedUser = 1 limit 1;

我的想法,是从获得最顶部的记录addedNametable_a进入table_b,用逗号名单沿着分开所有的值addedName从值table_a特定用户。

我在语句中使用限制1,但是mysql似乎为我指定的用户提供了所有addedName的字符串userFriends(这很好,正是我所需要的)。

但是,这是执行此操作的正确/最佳方法吗?MySql如何仅返回的单个值userDisplay,而只返回的所有值userFriends是否group_concat在其中运行单独的选择?如果保持这种方式,是否会遇到性能问题?

奇怪的是,即使没有LIMIT,结果也是相同的。我应该在那里保持极限吗?

有一个更好的方法吗?结果正是我所需要的。我在这里做对还是错?

托马斯·M

这是您跑步时发生的情况

select 'norman', addedName, group_concat(addedName) from table_a where addedUser=1 limit 1

首先,找到所有添加用户= 1的行(来自table_a的3行)。

然后,由于您使用的是集合函数(group_concat),但没有GROUP BY子句,因此3行全部视为一个单独的组。

因此,最后,您将获得1个分组行,并带有值james,kirk,lars等。您无需指定,LIMIT 1因为这样一来,您将始终只获得一行。

MySQL允许将诸如COUNT()或GROUP_CONCAT()之类的聚合函数与非聚合列(如查询中的addedName)结合使用,因此可以像您一样使用它,没有限制或与之配合使用。

本文收集自互联网,转载请注明来源。

如有侵权,请联系[email protected] 删除。

编辑于
0

我来说两句

0条评论
登录后参与评论

相关文章

来自分类Dev

如何使mysql Group_Concat与其他CONCAT信息一起使用?

来自分类Dev

如何将JPA 2.1的CriteriaBuilder.function与MySQL的“ GROUP_CONCAT”一起使用?

来自分类Dev

MySQL Group_Concat将两个表放在一起

来自分类Dev

MySQL Group_Concat将两个表放在一起

来自分类Dev

插入数据时,MySQL使用GROUP_CONCAT

来自分类Dev

与Dbeaver中的变量一起使用时,MySQL CONCAT返回错误的结果

来自分类Dev

将预处理语句与CONCAT一起使用时,MySQL语法错误

来自分类Dev

在mysql中一起使用order by和group by

来自分类Dev

MySQL Group By和Order By一起使用

来自分类Dev

在MySQL中一起使用Distinct,Count和Group

来自分类Dev

在mysql中一起使用order by和group by

来自分类Dev

使用join和group_concat的mysql请求

来自分类Dev

结合使用MYSQL GROUP_CONCAT和子查询

来自分类Dev

使用GROUP_CONCAT和IN子句的mysql存储过程构造

来自分类Dev

结合使用MYSQL GROUP_CONCAT和子查询

来自分类Dev

使用join和group_concat的mysql请求

来自分类Dev

MySQL GROUP_CONCAT和IN查询

来自分类Dev

将highcharts与php和MySql一起使用时,仅显示我的标题

来自分类Dev

将Nutch与MySQL一起使用时发生异常

来自分类Dev

MySQL对多个JOINS使用GROUP_CONCAT

来自分类Dev

使用group_concat更新mysql表

来自分类Dev

一起使用MySQL和MongoDB

来自分类Dev

MySQL group_concat限制分组中的行

来自分类Dev

mysql JSON_ARRAYAGG或GROUP_CONCAT有限制

来自分类Dev

将GROUP_CONCAT与where子句条件一起使用时,结果不正确

来自分类Dev

Ajax / PHP / MySQL:将数据插入db不能与Ajax和PHP一起使用

来自分类Dev

无法将python和pymysql一起使用插入数据mysql

来自分类Dev

MySQL:在group_concat中使用concat时如何排序?

来自分类Dev

MySQL:在group_concat中使用concat时如何排序?

Related 相关文章

  1. 1

    如何使mysql Group_Concat与其他CONCAT信息一起使用?

  2. 2

    如何将JPA 2.1的CriteriaBuilder.function与MySQL的“ GROUP_CONCAT”一起使用?

  3. 3

    MySQL Group_Concat将两个表放在一起

  4. 4

    MySQL Group_Concat将两个表放在一起

  5. 5

    插入数据时,MySQL使用GROUP_CONCAT

  6. 6

    与Dbeaver中的变量一起使用时,MySQL CONCAT返回错误的结果

  7. 7

    将预处理语句与CONCAT一起使用时,MySQL语法错误

  8. 8

    在mysql中一起使用order by和group by

  9. 9

    MySQL Group By和Order By一起使用

  10. 10

    在MySQL中一起使用Distinct,Count和Group

  11. 11

    在mysql中一起使用order by和group by

  12. 12

    使用join和group_concat的mysql请求

  13. 13

    结合使用MYSQL GROUP_CONCAT和子查询

  14. 14

    使用GROUP_CONCAT和IN子句的mysql存储过程构造

  15. 15

    结合使用MYSQL GROUP_CONCAT和子查询

  16. 16

    使用join和group_concat的mysql请求

  17. 17

    MySQL GROUP_CONCAT和IN查询

  18. 18

    将highcharts与php和MySql一起使用时,仅显示我的标题

  19. 19

    将Nutch与MySQL一起使用时发生异常

  20. 20

    MySQL对多个JOINS使用GROUP_CONCAT

  21. 21

    使用group_concat更新mysql表

  22. 22

    一起使用MySQL和MongoDB

  23. 23

    MySQL group_concat限制分组中的行

  24. 24

    mysql JSON_ARRAYAGG或GROUP_CONCAT有限制

  25. 25

    将GROUP_CONCAT与where子句条件一起使用时,结果不正确

  26. 26

    Ajax / PHP / MySQL:将数据插入db不能与Ajax和PHP一起使用

  27. 27

    无法将python和pymysql一起使用插入数据mysql

  28. 28

    MySQL:在group_concat中使用concat时如何排序?

  29. 29

    MySQL:在group_concat中使用concat时如何排序?

热门标签

归档