数据库的列合并(一行多列合并为一列)

文章描述了一个SQL查询过程,用于将camera_name_keyword_analysis_result表中的KeyWorld1到KeyWorld5列的数据计数合并成单列,并按计数降序排列。查询涉及到UNION操作和GROUPBY语句,用于合并和统计不同列的关键词出现次数。
摘要由CSDN通过智能技术生成

在这里插入图片描述

将tag1到tag5合并为一列,不是一行多列合并为一行一列,而是一行多列合并为一列。使用SQL语句:


SELECT KeyWorld1,sum(count)as countAll from 
( 
	select * from 
	(
	SELECT KeyWorld1,count(*) as count FROM (SELECT * from camera_name_keyword_analysis_result where idx=0) as table1  
	union  (SELECT KeyWorld1,count(*) from camera_name_keyword_analysis_result GROUP BY KeyWorld1)
	union  (SELECT KeyWorld2,count(*) from camera_name_keyword_analysis_result GROUP BY KeyWorld2)
	union  (SELECT keyWorld3,count(*) from camera_name_keyword_analysis_result GROUP BY keyWorld3)
	union  (SELECT keyWorld4,count(*) from camera_name_keyword_analysis_result GROUP BY keyWorld4)  
	union  (SELECT keyWorld5,count(*) from camera_name_keyword_analysis_result GROUP BY keyWorld5)    
	) as AllData  order by count DESC      #AllData是上面截取数据的别名,不加会出错
																#camera_name_keyword_analysis_result是表格名称,KeyWorld2到KeyWorld5是列名;

)  as AllDateWithOrder GROUP BY keyWorld1 order by countAll DESC ;


#  SELECT * from camera_name_keyword_analysis_result where idx=0    这一部分用于设置一个union开头,可以没有具体数据,后面5个带有union的sql语句才是联合的数据

在这里插入图片描述

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值