一、多行转成一列(并以","隔开)表名:A表数据:想要的查询结果:查询语句:SELECT  name ,
        value = ( STUFF(( SELECT    ',' + value
                          FROM      A
                          WHERE     name = Test.name            
                
         
            
            
            
            一、Pivot和UnPivot介绍1.Pivot介绍PIVOT用于将列值旋转为列名(即行转列),在SQL Server 2000可以用聚合函数配合CASE语句实现PIVOT的一般语法是:PIVOT(聚合函数(列) FOR 列 in (…) )AS P完整语法:table_sourcePIVOT(聚合函数(value_column)FOR pivot_columnIN(<column            
                
                    
                        
                                                            
                                                                        
                                                                                        转载
                                                                                    
                            2024-02-18 14:56:20
                            
                                483阅读
                            
                                                                             
                 
                
                             
         
            
            
            
                   相信大家对Excel的运用都不陌生,但是你真的熟悉Excel吗?今天给大家分享10个实用性极高的Excel隐藏技能。1批量设置求和公式        在使用Excel时,我们经常会用到求和,一般这种情况,可以使用SUM函数,这里介绍一种非常快捷的方法-组合键【Alt+=】,还可避免出现直接使用SUM函数下            
                
                    
                        
                                                            
                                                                        
                                                                                        转载
                                                                                    
                            2024-07-30 18:09:10
                            
                                87阅读
                            
                                                                             
                 
                
                                
                     
                                    
                             
         
            
            
            
            大家晚上好!今天达人哥跟小伙伴分享一个高效小技巧,可以轻松实现一列数据转一行四个的要求。赶紧往下看,学起来吧~如上图所示,现在,BOSS要调整一下,一行4组数字,顺序还不能改变还有这么无理的要求?没关系,达人哥教你用文本与表格互换功能,瞬间搞定,包你满意!第一步:文本转换成表格 首先,将文本转换为4列的表格:利用表格转换成文本的功能,选择需要调整的数据,单击【插入】选项卡-【表格】-【文            
                
                    
                        
                                                            
                                                                        
                                                                                        转载
                                                                                    
                            2024-04-29 12:04:03
                            
                                163阅读
                            
                                                                             
                 
                
                                
                     
                                    
                             
         
            
            
            
            我现在的表如下:产品名称    销售额  季度奶酪          50     第一季度奶酪                    
                
                    
                        
                                                            
                                                                        
                                                                                        原创
                                                                                    
                            2013-09-04 16:29:58
                            
                                863阅读
                            
                                                                             
                 
                
                             
         
            
            
            
            
test:
c1   c2
1    a
1     b
2     c
 
select
            to_char(wmsys.wm_concat(c2))                                   ,
            to_char(replace(wmsys.wm_concat(c2),',','/'))
     from
                   
                
                    
                        
                                                            
                                                                        
                                                                                        转载
                                                                                    
                            2016-02-04 17:34:00
                            
                                475阅读
                            
                                                                                    
                                2评论
                            
                                                 
                 
                
                             
         
            
            
            
            SELECT b.项目,b.[单位],b.[数量/金额] FROM(SELECT ProjectCategory 项目,CAST(COUNT(1) AS VARCHAR(20)) AS 数量,CAST(ISNULL(SUM(InvestAmount),0.0) AS VARCHAR(20)) AS 投资金额,cast(ISNULL(SUM(MonthIncome),0.0) AS VARCHAR(            
                
                    
                        
                                                            
                                                                        
                                                                                        原创
                                                                                    
                            2014-11-27 22:23:00
                            
                                536阅读
                            
                                                                             
                 
                
                             
         
            
            
            
            前言以前接触过通用SQL中的行列转置,行转列使用聚合函数sum | max 然后结合case when then else end 语句就可以实现,而列转行使用union或union all来实现。这样做其实有点麻烦,而在oracle数据中,专门提供了这样的函数来实现行列转置功能。通用SQL行列转置1、行转列先准备好数据表stu_score,表中数据如下: 现在想要实现以下的效果: 通用的SQL如            
                
                    
                        
                                                            
                                                                        
                                                                                        转载
                                                                                    
                            2023-08-02 10:46:46
                            
                                354阅读
                            
                                                                             
                 
                
                                
                     
                                    
                             
         
            
            
            
            怎么把一条记录拆分成几条记录?User No. A B C1 1 21 34 241 2 42 25 16 RESULT: User No. Type N...            
                
                    
                        
                                                            
                                                                        
                                                                                        转载
                                                                                    
                            2006-06-15 09:12:00
                            
                                276阅读
                            
                                                                                    
                                2评论
                            
                                                 
                 
                
                             
         
            
            
            
            字符串拼接方法1 :concat 函数 : CONCAT(CHAR1,CHAR2)   特点:只能拼接两个字符串,也可以使用嵌套的方式拼接多个。嵌套方法:方法2 :|| 拼接 :   现有一张省级架构表,需要把字段归为 “100001 省公司” 的样式: || 拼接:相比concat函数使用更方便,可以在拼接字段之间添加想要的内容。listagg函            
                
                    
                        
                                                            
                                                                        
                                                                                        转载
                                                                                    
                            2023-12-25 07:38:15
                            
                                198阅读
                            
                                                                             
                 
                
                                
                     
                                    
                             
         
            
            
            
            最近工作用到了好几次列转行,做个小总结。顺道也总结一下行转列 行转列:转换之前的表格,第三、四列分别为特征和数值 图1  首先看第一次的执行sql:select
 id , name ,
 (case 特征 when '年龄' then 数值 else 0 end) as age,
 (case 特征 when '身高' then 数值 else 0 end) as heigh            
                
                    
                        
                                                            
                                                                        
                                                                                        转载
                                                                                    
                            2023-08-14 14:11:28
                            
                                506阅读
                            
                                                                             
                 
                
                                
                     
                                    
                             
         
            
            
            
            1. 前提固定行数 如:固定前10行等。IF EXISTS (SELECT * FROM sys.objects WHERE object_id = OBJECT_ID(N'[dbo].[FUN_GET_工程番号SQL]') AND type in (N'FN', N'IF', N'TF', N'FS', N'FT'))
 DROP FUNCTION [dbo].[FUN_GET_工程番号SQL]            
                
                    
                        
                                                            
                                                                        
                                                                                        转载
                                                                                    
                            2023-11-30 18:23:26
                            
                                144阅读
                            
                                                                             
                 
                
                             
         
            
            
            
            1.现象 在命令行中,执行sql语句如果包含中问题,提示“ Data too long for column '列名' at row 1”  或者在命令行中查询出的结果中,中文乱码 2.分析 a.查看命令行的默认编码方式:右击命令行标题栏--属性--当前代码页 b.查看mysql中客户端与结果集的编码方式   show            
                
                    
                        
                                                            
                                                                        
                                                                                        转载
                                                                                    
                            2014-10-04 21:03:00
                            
                                233阅读
                            
                                                                             
                 
                
                                
                     
                                    
                             
         
            
            
            
            hive行列转换方法具体思路需要根据数据来定,常见的解决方法如下:行转列: 多行转多列1、使用case when 查询出多列即可,即可增加列。 或者 2.转成数组或者集合后 一个一个的取值 不就变成一列了 一个字段 多个取值 变成多列 多列变一列 select concat(str1,str2,str3) from 表; – concat可以带多个参数列转行: 字段 多行转一行 一行转多行1、la            
                
                    
                        
                                                            
                                                                        
                                                                                        转载
                                                                                    
                            2023-05-27 15:06:13
                            
                                629阅读
                            
                                                                             
                 
                
                                
                     
                                    
                             
         
            
            
            
            第一:列转行 (对某列拆分,一列拆多行)lateral view explode(split(column, ',')) num数据
2122 9,12
2123 12,15
2124 12,15
2125 1,12,15
建表
create table if not exists t_row_to_column_tmp(
id string,
tag string
)
row form            
                
                    
                        
                                                            
                                                                        
                                                                                        转载
                                                                                    
                            2023-06-25 17:02:11
                            
                                765阅读
                            
                                                                             
                 
                
                             
         
            
            
            
            4、Hive查询语法(DQL)SELECT [ALL | DISTINCT] select_expr, select_expr, ...
FROM table_reference
[WHERE where_condition]
[GROUP BY col_list]
[ORDER BY col_list]
[CLUSTER BY col_list
| [DISTRIBUTE BY col_list            
                
                    
                        
                                                            
                                                                        
                                                                                        转载
                                                                                    
                            2023-08-14 12:42:05
                            
                                391阅读
                            
                                                                             
                 
                
                                
                     
                                    
                             
         
            
            
            
                 在处理数据的时候,因为数据源在Excel文件中,本人Excel文件的处理方法不是太会,加上朋友说在Excel中处理这样的数据很麻烦,我就想着干脆导入到数据库中通过代码解决这个问题,感兴趣的可以找我拿数据源自己试试。自己也是为了避免忘记操作,所以记录下来。    数据格式大致如下(数据量有70w)标题是我自己加            
                
                    
                        
                                                            
                                                                        
                                                                                        转载
                                                                                    
                            2024-03-11 10:30:58
                            
                                75阅读
                            
                                                                             
                 
                
                                
                     
                                    
                             
         
            
            
            
            大家好,我是知数堂SQL 优化班老师 网名:骑龟的兔子在之前的的系列文章中,有意思的SQL(3) 行转列,列转行和复制已经给大家介绍了,行转列,列转行,复制等方法。在这篇文章中,对其进行更深一层的应用。需求如下,有一个表如下图所示       现在有个需求是,我在画面输入'10004,22744,24007' 要求返回对应的三行数据当然有很多种解决方案,一类是,在前端或者server端 用语言把输            
                
                    
                        
                                                            
                                                                        
                                                                                        转载
                                                                                    
                            2023-07-20 18:55:21
                            
                                196阅读
                            
                                                                             
                 
                
                                
                     
                                    
                             
         
            
            
            
            MySQL列转行的用法:## 标题SELECT
 a.employeeId,
 MAX( CASE checkType WHEN ‘OnDuty’ THEN userCheckTime END )OnTime,
 MAX( CASE checkType WHEN ‘OffDuty’ THEN userCheckTime END ) OffTime 
 FROM
 t_oa_check_work a            
                
                    
                        
                                                            
                                                                        
                                                                                        转载
                                                                                    
                            2023-06-08 15:53:34
                            
                                266阅读
                            
                                                                             
                 
                
                             
         
            
            
            
            有这样的一需求: 
b列的值是不确定的,tag1—-tag50之间,但符合条件的tag最多为5个(不为空只有5个),转换成行。 
root@xxx 08:17:54>select * from test;
+------------+-------+
| a          | b     |
+------------+-------+
| 20            
                
                    
                        
                                                            
                                                                        
                                                                                        转载
                                                                                    
                            2023-05-26 15:35:15
                            
                                267阅读