mysql concat 去掉重复_mysql - concat字段具有共同的重复密钥,并删除那些重复项,从而留下一个 - 堆栈内存溢出...
这让我烦恼了最后一个星期,而凭借基本的知识,我根本无法找到一种解决方案,将我们带到了我们所需要的位置。 我已经搜索了更新,group_concat,concat,联接,但我无法获得我们需要的结果。
问题如下:
我们有2列可用于获得所需结果的列:
我们正在研究的数据库:
+------------------------------------+-------------+
| id | value |
+------------------------------------+-------------+
| D44172cb5c086c19a4c0286270916bc52 | A |
| D44172cb5c086c19a4c0286270916bc52 | C |
| D44172cb5c086c19a4c0286270916bc52 | B |
| D87d93570cbc9a3edc18601e0aff6e261 | D |
| D87d93570cbc9a3edc18601e0aff6e261 | A |
| D87d93570cbc9a3edc18601e0aff6e261 | F |
+------------------------------------+-------------+
我们期望得到的是:
+-------------------------------------+-------------+
| id | value |
+-------------------------------------+-------------+
| D44172cb5c086c19a4c0286270916bc52 | A|C|B |
| D87d93570cbc9a3edc18601e0aff6e261 | D|A|F |
+-------------------------------------+-------------+
我们当前正在使用一个SELECT命令,该命令可以正常工作,并在名为valuenew的临时(因为我们仅选择)列中按预期提供数据:
SELECT * GROUP_CONCAT(value SEPARATOR '|') AS valuenew FROM db.table GROUP BY id ;
在连接所需的值之后,我们如何进行删除重复项的查询( UPDATE或DELETE )? 因为使用GROUP_CONCAT返回的行数将少于实际存在的行数。
我们需要在以后的阶段中将串联的值与其他列组合在一起,以便行必须等于返回的行。
解
CREATE TABLE IF NOT EXISTS `temp`
SELECT *, GROUP_CONCAT(`value` SEPARATOR '|') AS `values`
FROM `db`.`table`
GROUP BY `id`;
TRUNCATE TABLE `db`.`table`;
UPDATE `temp` SET value = values;
ALTER TABLE `temp` DROP COLUMN values;
INSERT INTO `db`.`table`([all column titles here])
SELECT *
FROM `db`.`temp`
;
DROP TABLE `db`.`temp`;
mysql concat 去掉重复_mysql - concat字段具有共同的重复密钥,并删除那些重复项,从而留下一个 - 堆栈内存溢出...相关推荐
- oracle更新blol字段超长,oracle - 将对象值插入表PL / SQL而无需指定属性 - 堆栈内存溢出...
我有以下架构 DROP TABLE ALUMNO_ASIGNATURA; DROP TABLE ASIGNATURA; DROP TABLE TITULACION; DROP TABLE PROFES ...
- mysql韩语排序_MySQL汉字字段按拼音排序
我们的MySQL使用latin1的默认字符集,也就是说,对汉字字段直接使用GBK内码的编码进行存储,当需要对一些有汉字的字段进行拼音排序时(特别涉及到类似于名字这样的字段时),默认无法通过order ...
- mysql 多主键_MySQL多字段主键
MySql多字段主键又可以成为复合主键,复合主键也是主键的一种与主键具有相同的功能和定义,所谓的复合主键,就是指表的主键含有一个以上的字段组成 . MySQL多字段主键又可以成为复合主键.复合主键也是 ...
- mysql 并发锁表_MySQL锁表的用法,防止并发情况下的重复数据
早就听说lock tables和unlock tables这两个命令,从字面也大体知道,前者的作用是锁定表,后者的作用是解除锁定.但是具体如何用,怎么用,不太清楚.今天详细研究了下,总算搞明白了2者的 ...
- mysql text查找性能_MySQL TEXT字段性能
I now know that TEXT fields are written to disk rather than in memory when queried 仅当查询需要临时表来存储多个排序或 ...
- mysql字符串转拼音_MySQL中文字段转拼音
准备:数据库中一下一个表结构 现在要实现对字段 display_name第一个字符转成拼音,即实现字段 pinyin中的效果,可以直接这样 SELECT display_name, ELT(INTER ...
- mysql连接字段需要索引_mysql – 索引字段上的连接不使用索引
我有两张桌子.我写了一个查询来在一列上加入它们.此列在两个表中都已编制索引,但MySQL未使用索引.有人a)告诉我为什么和b)告诉我如何让MySQL使用索引快速加入这些表. 第一张表: CREATE ...
- mysql中创建视图语法错误_mysql - 使用过程MySQL创建视图时出错 - 堆栈内存溢出
尝试使用过程创建视图时出现问题. 我必须这样做,因为我需要在MySQL中发挥作用,将表的行转换为另一个表的列. 该查询效果很好,但是当我将其放在" CREATE VIEW"语句中时 ...
- mysql 内存溢出_mysql - MySQL在非常大的表上计算性能 - 堆栈内存溢出
我在Innodb中有一个表格,其中有超过1亿行. 我必须知道外键= 1时是否有超过5000行.我不需要确切的数字. 我做了一些测试: => 16 seconds => 16秒中 => ...
最新文章
- 【转】Visual Studio团队资源管理器 Git 源码管理工具简单入门
- Linux下的Shell工作原理
- C++输出流的格式控制
- 学计算机专业的毕业证,对于计算机专业的同学来说,学历真的那么重要吗?
- java创建医生的对象_基于安卓Android的作物医生App设计开发(MySQL)(含录像)
- spring 事务原理_Spring声明式事务处理的实现原理,来自面试官的穷追拷问
- 反引号包裹反引号_五个金色反引号
- 从GlassFish 3.x扩展到WebLogic 12c Server
- BugkuCTF-MISC题隐写3
- 信息学奥赛一本通 1308:【例1.5】高精除
- 软件加入使用时间_2020年,加入“midi音乐制作讲堂”内部会员,学音乐制作变得更简单...
- 邮箱地址是什么,163vip.com怎么注册、价格、申请入口、功能!
- 生活,人艰不拆......
- 复利单利计算的源代码
- 无人值守安装系统完整(CentOS7)
- 虚拟机安装mysql步骤
- XAG一键并轨XRP媒体报道
- 【嵌入式12】DMA通信原理及编程实验,DMA方式向上位机连续发送数据
- 计算机毕业设计 SSM+Vue水果超市商城系统 农夫水果商城系统 生鲜超市商城系统Java Vue MySQL数据库 远程调试 代码讲解
- HTML5期末大作业:个人主页网站设计(6页)代码质量高 学生简单个人静态HTML网页设计作品 DIV布局个人介绍网页模板代码 DW学生个人网站制作成品下载