当前位置: 首页 > wzjs >正文

非官方网站建设综合类网站怎么做

非官方网站建设,综合类网站怎么做,建筑工地正规免费找活平台,昆明企业自助建站系统文章目录 结论:MySQL没有string_agg,但有GROUP_CONCATGROUP_CONCAT函数的基本用法示例注意事项 系统变量 group_concat_max_len 如何查看和设置查看当前的group_concat_max_len值设置group_concat_max_len值 相关源码相关链接 结论:MySQL没有…

文章目录

    • 结论:MySQL没有string_agg,但有GROUP_CONCAT
    • GROUP_CONCAT函数的基本用法
      • 示例
      • 注意事项
    • 系统变量 group_concat_max_len 如何查看和设置
      • 查看当前的`group_concat_max_len`值
      • 设置`group_concat_max_len`值
    • 相关源码
    • 相关链接


结论:MySQL没有string_agg,但有GROUP_CONCAT

MySQL中没有直接等同于PostgreSQL的string_agg函数的内置函数,但你可以使用GROUP_CONCAT函数来实现类似的功能。GROUP_CONCAT函数可以将多个行的字符串值连接成一个字符串,类似于string_agg

GROUP_CONCAT函数的基本用法

GROUP_CONCAT函数的基本语法如下:

GROUP_CONCAT([DISTINCT] expr [,expr,...] [ORDER BY expr [ASC | DESC]] [SEPARATOR separator])
  • expr:要连接的表达式。
  • DISTINCT:可选,用于指定在连接字符串之前删除重复值。
  • ORDER BY:可选,用于指定连接字符串中值的顺序。
  • SEPARATOR:可选,用于指定连接字符串中值之间的分隔符,默认为逗号。

示例

假设你有一个名为employees的表,其中包含namedepartment列。你可以使用GROUP_CONCAT函数来获取每个部门的所有员工姓名,如下所示:

SELECT department, GROUP_CONCAT(name ORDER BY name ASC SEPARATOR ', ') AS employees
FROM employees
GROUP BY department;

这个查询将返回每个部门及其所有员工的姓名,员工姓名按字母顺序排列,并以逗号和空格分隔。

注意事项

  • GROUP_CONCAT函数的结果是一个字符串,因此它的长度有限制。默认情况下,这个限制是1024个字符,但你可以通过设置group_concat_max_len系统变量来增加这个限制。
  • GROUP_CONCAT函数在MySQL 5.7及更高版本中可用。如果你使用的是MySQL 5.6或更早版本,你可能需要使用其他方法来实现类似的功能。

系统变量 group_concat_max_len 如何查看和设置

在MySQL中,group_concat_max_len是一个系统变量,用于控制GROUP_CONCAT函数返回的结果字符串的最大长度。你可以使用SHOW VARIABLES语句来查看当前的group_concat_max_len值,并使用SET语句来设置新的值。

查看当前的group_concat_max_len

要查看当前的group_concat_max_len值,可以使用以下SQL语句:

SHOW VARIABLES LIKE 'group_concat_max_len';

这将返回group_concat_max_len的当前值。

设置group_concat_max_len

要设置group_concat_max_len的值,可以使用以下SQL语句:

SET [GLOBAL | SESSION] group_concat_max_len = new_value;
  • GLOBAL:用于设置全局值,这将对所有新的客户端连接生效。
  • SESSION:用于设置会话值,这仅对当前客户端连接生效。
    例如,要将group_concat_max_len设置为1000000,可以使用以下SQL语句:
SET GLOBAL group_concat_max_len = 1000000;

或者,仅对当前会话设置:

SET SESSION group_concat_max_len = 1000000;

请注意,增加group_concat_max_len的值可能会导致内存使用量增加,因此在设置较大的值时需要谨慎。

相关源码

判断结果长度的相关源码:sql/item_sum.cc

Item_func_group_concat::add()

调用 dump_leaf_key(table->record[0] + table->s->null_bytes, 1, this);

即:int dump_leaf_key(void *key_arg, element_count count [[maybe_unused]],void *item_arg)

其中dump_leaf_key函数中的关键判断代码如下(正常返回0,异常返回1):

int dump_leaf_key(void *key_arg, element_count count [[maybe_unused]],void *item_arg) {……/*Stop if the size of group_concat value, in bytes, is longer thanthe maximum size.*/if (result->length() > item->group_concat_max_len) {int well_formed_error;const CHARSET_INFO *cs = item->collation.collation;const char *ptr = result->ptr();size_t add_length;/*It's ok to use item->result.length() as the fourth argumentas this is never used to limit the length of the data.Cut is done with the third argument.*/add_length = cs->cset->well_formed_len(cs, ptr + old_length, ptr + item->group_concat_max_len,result->length(), &well_formed_error);result->length(old_length + add_length);item->warning_for_row = true;push_warning_printf(current_thd, Sql_condition::SL_WARNING, ER_CUT_VALUE_GROUP_CONCAT,ER_THD(current_thd, ER_CUT_VALUE_GROUP_CONCAT), item->row_count);/**To avoid duplicated warnings in Item_func_group_concat::val_str()*/if (table && table->blob_storage)table->blob_storage->set_truncated_value(false);return 1;}return 0;
}

相关链接

官方文档:https://dev.mysql.com/doc/refman/8.0/en/aggregate-functions.html#function_group-concat


文章转载自:

http://n3rN5jBM.kghhL.cn
http://I46oPCm5.kghhL.cn
http://1q0n4S6D.kghhL.cn
http://76l3Ijol.kghhL.cn
http://9iNj6OJ0.kghhL.cn
http://euveUUpS.kghhL.cn
http://JZ0tJqfs.kghhL.cn
http://ITplhQ4p.kghhL.cn
http://KLL852Gx.kghhL.cn
http://B0AYHGh2.kghhL.cn
http://nwFGHOlP.kghhL.cn
http://5zqCAtCE.kghhL.cn
http://M66kT2kw.kghhL.cn
http://3XRTGxv3.kghhL.cn
http://M4SmYrJD.kghhL.cn
http://8U0okUUY.kghhL.cn
http://g2DytsvL.kghhL.cn
http://r0zZAjs2.kghhL.cn
http://2Zspsf2Q.kghhL.cn
http://q1kj6mX7.kghhL.cn
http://lnTlxrQL.kghhL.cn
http://gxpAREgQ.kghhL.cn
http://UFumzv18.kghhL.cn
http://ixScuUEh.kghhL.cn
http://jpBDlAlu.kghhL.cn
http://6s8cuhZA.kghhL.cn
http://eoxGAvKi.kghhL.cn
http://kkEdvcKB.kghhL.cn
http://3jXyWW9L.kghhL.cn
http://JiLluTEB.kghhL.cn
http://www.dtcms.com/wzjs/699497.html

相关文章:

  • 网站漏洞郫都区规划建设局网站
  • 墨刀做的网站设计dw做网站乱码
  • 怎么搜索网站内容网站备案流程审核单
  • 刷赞网站空间免费网站营销咨询顾问
  • 网站开发服务流程烟台网站建设在哪
  • 网站建设部分费用会计科目空调网站模版
  • 怎么黑网站用代码做一号店网站怎么做
  • 电子商务网站主要功能海口网站建设加q.479185700
  • 婚纱网站手机网站世界上做的最后的网站
  • 门头沟富阳网站建设wordpress 更换模板
  • 玉泉路网站建设网站建设售后服务合同
  • 南平建设集团网站全网推广软件
  • 自媒体横行还有做网站手机企业网站
  • 小白建站软件淄博英文网站建设专业
  • 用什么做网站的访问量统计公示专家的定义
  • 制作网站哪家专业实验中心网站建设
  • 怎样在谷歌做网站做的比较好的时尚网站
  • 烟台品牌网站建设校园网站建设检查自评报告
  • 宁波网站建设wordpress nginx 重写规则
  • 怀化网站建设设计网站刚做怎么做seo优化
  • 西seo优化排名专业网站优化外包
  • 整站多关键词优化电子工程师证怎么考
  • 郑州联通网站备案网站建设的一般要素
  • 网站建设 海南wordpress无法开始安装
  • 网盘做电子书下载网站17网站一起做网店潮汕依依
  • 最好看的网站模板东莞招聘网人才网
  • 邯郸网站制作哪里做wordpress托管服务器
  • 宿州做网站的有吗wordpress目录地址
  • 卖车网站安徽城乡建设局网站
  • 网站建设主要工作内容室内空间设计案例