菜鸟向各位高手们求一段sql代码

charmy00 2018-01-04 01:37:27
我有一个表字段存储的数据类似这样:
fashion scarf
mens plaid scarf
cashmere scarf for men
mens grey scarves
mens grey scarf

我需要取出这个字段值的集合(无重复的单词),返回一个字符串,结果是:

mens fashion plaid grey scarves cashmere scarf for men(单词顺序无所谓)

请问sql语句要怎么写呀?

谢谢大家!!!
...全文
742 7 打赏 收藏 转发到动态 举报
写回复
用AI写文章
7 条回复
切换为时间正序
请发表友善的回复…
发表回复
化工厂很高 2018-01-05
  • 打赏
  • 举报
回复
不用json那么复杂,sql语句有查询去充关键字,你百度一下就知道了
zjcxc 2018-01-05
  • 打赏
  • 举报
回复
拆分不用先 GROUP_CONCAT的,毕竟长度未知,不 GROUP_CONCAT 都不好保证要拆分的个数在序号表的表示范围内 GROUP_CONCAT 的话,就更不好保证了
qq_33063583 2018-01-05
  • 打赏
  • 举报
回复
select DISTINCT substring_index(substring_index(a.value,',',b.help_topic_id+1),',',-1) from (select GROUP_CONCAT(REPLACE(value,' ',',')) value from t ) a join mysql.help_topic b on b.help_topic_id < (length(a.value) - length(replace(a.value,',',''))+1);
zjcxc 2018-01-05
  • 打赏
  • 举报
回复
我也不十分确定,就用我的那个数据样本形式吧
化工厂很高 2018-01-05
  • 打赏
  • 举报
回复
引用 3 楼 zjcxc 的回复:
[quote=引用 2 楼 qq_29623901 的回复:]
不用json那么复杂,sql语句有查询去充关键字,你百度一下就知道了

没搜索到,请教更具体的[/quote]
哇,大佬,你还用我教更具体的啊,楼主问的问题我也没了解很详细,楼主是怎么存储的过程,
是这样:
还是这样:
zjcxc 2018-01-05
  • 打赏
  • 举报
回复
引用 2 楼 qq_29623901 的回复:
不用json那么复杂,sql语句有查询去充关键字,你百度一下就知道了
没搜索到,请教更具体的
zjcxc 2018-01-04
  • 打赏
  • 举报
回复
-- 如果你的版本支持 JSON,可以用 JSON 处理,这样相对容易
DROP TEMPORARY TABLE IF EXISTS t;
CREATE TEMPORARY TABLE t(value varchar(500));
INSERT INTO t VALUES
('fashion scarf'),
('mens plaid scarf'),
('cashmere scarf for men'),
('mens grey scarves'),
('mens grey scarf');


--  合并关键字
SELECT @x:=JSON_MERGE(@x, CONCAT('{"', REPLACE(value, ' ', '":1, "'), '":1}') )
FROM t, (SELECT @x:='{}') x;

-- 所有不重复的关键字(需要格式的话,做一下字符串替换)
SELECT JSON_KEYS(@x);
本课程根据讲师十多年在世界500强外企的生产环境中的SQL Serer数据库管理和项目实施经验倾心打造。课程系统性强,知识体系完整,覆盖90%以上的企业环境下SQL Server高可用场景,课程中不仅演示详细的操作步骤,更加突出最常见的故障和问题,让学员少走“弯路”,不只是让学员学会“操作”更能让学员“操作”的规范,满满的干货分享,一些课程资料(架构图、部署规划表格等)不仅可以帮助学员掌握技能,也可以作为学员在企业生产环境中实施SQL Server高可用的配置文档、操作手册等。课程的实验环境介绍:1)全部基于微软域环境和企业版SQL Server AOAG - 95%以上的企业环境都是在域环境中,不介绍非域环境和标准版的SQL Server高可用性组,这的配置在企业中较罕见,没有实践意义,不浪费学员时间。2)相应域环境已提前部署和配置好 - 学员导入虚拟机即可开始实验,无需从零开始搭建域环境,所有实验中SQL Server均已加域,直入主题,节省大量时间。3)最新的Windows Server故障转移集群(WS2016、WS2019)和最新版本的SQL Server(SQL2017、SQL2019) -  WS2016-SQL2017与WS2019-SQL2019是目前大多数企业SQL Server高可用的主要平台,基于微软产品生命周期现在一些企业也在讲早期的AOAG向这两个版本迁移,掌握这两种组合不仅让学员学会,更能学有所用。本课程为后续SQL Server进阶课程铺垫,是通向SQL Server DBA 专家的必经之路,讲师每周答疑两次。所有课程资料包括:课程PPT、架构图、部署规划表格、各类脚本学员均可下载。     

56,681

社区成员

发帖
与我相关
我的任务
社区描述
MySQL相关内容讨论专区
社区管理员
  • MySQL
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧