首页
学习
活动
专区
圈层
工具
发布
  • 您找到你想要的搜索结果了吗?
    是的
    没有找到

    MySQL根据某个字段将多条记录的某个字段拼接成一个字段

    问题 GROUP_CONCAT函数用于将多个字符串连接成一个字符串,在拼接成字符串时就会存在拼接长度的问题,MySQL 默认的拼接最大长度为1024 个字节,由于1024个字节会出现不够用的情况,所以有时需要去根据情况进行修改..., 使用SHOW VARIABLES LIKE "%group_concat_max_len%"查看 mysql> SHOW VARIABLES LIKE "%group_concat_max_len%...> 1 临时修改(命令行) 1.1 修改group_concat_max_len长度为:10240 mysql> SET GLOBAL group_concat_max_len = 10240; mysql...> SET SESSION group_concat_max_len = 10240; 1.2 查看 mysql> SHOW VARIABLES LIKE "%group_concat_max_len%...[mysqld] ...... group_concat_max_len = 10240  #添加 2.2 重启mysql服务 如果mysql服务不重启的话,可以配合临时修改一起使用 $ service

    3K20

    MySQL实战:自动计算字段如何让查询效率翻倍?

    为什么需要自动计算字段?在日常数据库开发中,你是否遇到过这样的困扰?...如果答案是“Yes”,那么MySQL的Generated Columns(生成列)功能将是你的一把利器!它能在表设计阶段定义自动计算的字段,减少代码冗余、提升查询效率,甚至通过索引优化复杂查询。...数据插入更新的时候会自动计算,不需要额外赋值。 场景2:数据校验与约束需求:用户表中“年龄”需根据“生日”字段自动计算,并限制年龄≥18岁。...Generated Columns优化: -- 用户表中“年龄”需根据“生日”字段自动计算,并限制年龄≥18岁。...如果你有其他MySQL优化技巧,也欢迎一起探讨~

    51320

    银行数据库迁移至MySQL,竟被时间字段这玩意耍了……

    作者介绍 农行研发中心“数风云”团队,一支朝气蓬勃、快速成长的技术团队,始终致力于农行大数据、数据库和云计算等领域的应用实践与技术创新,探索数据赋能,勇攀数据云巅,为企业数字化转型和金融科技发展不断贡献力量...背景介绍 笔者在工作中曾遇到SyBase数据库迁移至MySQL时的一个问题:使用bcp将SyBase中的数据导出为csv文件时,datetime数据类型默认导出格式与MySQL不兼容。...解决方式 解决此问题的方式不外乎两种:一是修改导出后的csv文件,令其时间字段的数据格式兼容MySQL;二是修改SyBase数据库中时间字段的数据格式,使其直接能通过bcp导出兼容MySQL的csv文件...varchar类型,可以使用如下SQL语句: select convert(varchar(100),changetime,111) as dates from test; 若该字段仅有一行数据,其值为...至此,解决了SyBase中datetime类型字段默认导出格式与MySQL不兼容的问题。

    2.2K20

    记一次误删MySQL数据库后根据日志进行数据恢复

    当前案例中的服务器操作系统为Ubuntu,MySQL数据库版本为8.0,且部署在Docker容器中,容器名称为mysql,下文均以此条件开展。...检查是否开启了binlog(二进制日志),将下面命令中的容器名称替换成你实际的容器名:展开代码语言:TXTAI代码解释dockerexec-it名称>mysql-uroot-p执行后会让你输入你MySQL...恢复操作复制日志文件到宿主机将docker容器中的日志文件复制到宿主机中:展开代码语言:TXTAI代码解释dockercp名称>:/var/lib/mysql/binlog.000002..../recovery/dockercp名称>:/var/lib/mysql/binlog.000003./recovery/其中recovery为宿主机的目录,根据你实际的目录路径填写。...安装日志解析工具包利用本地的MySQL服务工具包中的mysqlbinlog根据对日志进行解析,先在本地执行一下以下命令,看一下本地是否有相关服务组件:展开代码语言:TXTAI代码解释mysqlbinlog

    68320

    技术分享 | MySQL 字段长度限制的计算方法

    一、MySQL 限制回顾 之前在《MySQL Text 字段的限制》一文中讲过了关于 MySQL 在 Server 层和 InnoDB 层的限制,但是限制的算法没有详细展开,这里进行补充说明,先回顾一下...另:以下计算方式均已 MySQL 5.7.27 进行说明。...You have to change some columns to TEXT or BLOBs 所以可以根据这个报错来定位到计算方式,其关键函数路径如下: mysql_prepare_create_table...length / 8; default: return 0; } } 2.2 小结 根据上面计算方式的梳理,在 MySQL Server 层计算长度的公式,可以写成这样的伪代码: data_offset...,然后求 field_ext_max_size的长度, 这个是用户存储字段长度的变量 这个只是默认初始值,后面会根据长度进行溢出页的设置 */ field_max_size

    7.2K10

    php mysql 经纬度_mysql,php和js根据经纬度计算距离

    根据经纬度计算距离公式 图片来自互联网 对上面的公式解释如下: Lung1 Lat1表示A点经纬度, Lung2 Lat2表示B点经纬度; a=Lat1 – Lat2 为两点纬度之差 b=Lung1...-Lung2 为两点经度之差; 6378.137为地球半径,单位为千米; 计算出来的结果单位为千米,若将半径改为米为单位则计算的结果单位为米。...计算精度与谷歌地图的距离精度差不多,相差范围在0.2米以下。.../** * 根据两点间的经纬度计算距离 * @param $lng1 * @param $lat1 * @param $lng2 * @param $lat2 * @return int */ public...@param d * @returns {number} */ function getRad(d){ var PI = Math.PI; return d*PI/180.0; } /** * 根据经纬度计算两点间距离

    6.9K20

    java Mysql 根据经纬度实时计算地址位置距离

    数据库地址表设计 通用的区域街道地址表 tz_sys_area 字段名称 类型 备注 area_id bigint 区域 ID area_name varchar(32) 区域名称 parent_id...bigint 所属父区域 ID level int 层级 type char 区域类型 0 国家 1 省份直辖市 2 地市 3 区县 area_name varchar(32) 区域名称 parent_id...level int 层级 后台也可以做修改 四级区域地址数据来源我在网上找的 json 文件然后按照格式倒入到的数据库,需要的可以关注我的公众号猿小叔 门店地址表 tz_address 需求实现 这里计算距离就需要用到经纬度...longitude.split(",")[0]; address.setLat(lat); address.setLng(lng); return address; } MySQL...根据经纬度计算地址距离当前位置 SELECT ( 6371 * acos(

    1.4K40

    还在苦恼MySQL如何根据日期精确计算年龄?看这一篇,就够了!

    使用SQL语句计算年龄,在事务处理和日期计算中,较为常见。MySQL提供了许多日期函数,可以自由发挥。本文中看我们尝试 SQL 年龄计算 —— 组件 MySQL没有开箱即用的工具,用于计算年龄。...MySQL已经提供的函数,下面介绍一下: CURDATE() – 返回当前日期 TIMESTAMPDIFF() – 计算时间差,差值单位自定义 这俩函数就够了,日期差,获取年差值,月差值,或者其他。...,下面计算两个日期相差的年份: TIMESTAMPDIFF(YEAR, dob, CURDATE()) 上式dob字段,在传递给TIMESTAMPDIFF函数之前,需要转化解析为日期格式字符串,才能正常使用...MySQL 计算年龄 —— 提高精度 上面的式子,计算出了正确的年龄。但是如果日期格式不完整,缺少月份,或者日期,都不能计算出来结果。 ? 对应同一个月份,或者同一年的日期,计算差值,年总是=0。...下面我们根据生日dob字段,分别计算并更新 age_year, age_month, age_days 和age_formatted。

    10.5K41

    JavaWeb05- 就这几步轻松操作MySQL数据库!

    在创建表时,需要指定表的列数,以及列名称,列类型等信息。而不用指定表格的行数,行数是没有上限的。 表中的列我们称之为字段,表中的行我们称之为记录。...格式: show create table 表名称; 例如: show create table user01; mysql的数据类型 java中的数据类型 mysql中的数据类型 备注 byte tinyint...` asc 升序 (默认) desc 降序 练习: 1.查询出所有商品,并根据价格进行升序排序 2.查询出所有商品,根据数量进行升序排列,如果数量相同,根据价格进行降序排列 聚集函数 之前我们做的查询都是横向查询...,它们都是根据条件一行一行的进行判断,而使用聚合函数查询是纵向查询,它是对一列的值进行计算,然后返回一个单一的值;另外聚合函数会忽略空值。...今天我们学习如下五个聚合函数: count:统计指定列不为NULL的记录行数; sum:计算指定列的数值和,如果指定列类型不是数值类型,那么计算结果为0; max:计算指定列的最大值,如果指定列是字符串类型

    1.4K50

    MySQL 开发规范

    所有的数据库对象名称必须使用小写字母并用下划线分割(MySQL大小写敏感,名称要见名知意,最好不超过32字符)禁止在数据中存储图片,文件二进制数据(使用文件服务器)禁止在线上做数据库压力测试禁止从开发环境...类型(不丢失精度,禁止使用 float 和 double)所有的数据库对象名称禁止使用MySQL保留关键字临时库表必须以tmp为前缀并以日期为后缀(tmp_)备份库和库必须以bak为前缀并以日期为后缀(...,减小表的宽度(mysql限制最多存储4096列,行数没有限制,但是每一行的字节总数不能超过65535。...(禁止使用物理外键,建议使用逻辑外键)尽量使用 union all 代替 union拆分复杂的大SQL为多个小SQL( MySQL一个SQL只能使用一个CPU进行计算)对于程序连接数据库账号,遵循权限最小原则超过三个表禁止...在varchar字段上建立索引时,必须指定索引长度,没必要对全字段建立索引,根据实际文本区分度决定索引长度即可。

    94020
    领券