create table loc(loc varchar(50),xiaoqu varchar(50),addr varchar(50),company varchar(50))
插入資料
區域
小區名稱
房屋位址
中介公司寶山
慶安三村
綏化路52弄a寶山
月浦十村
月浦十村67號b寶山
盛橋三村
盛橋三村94號c寶山
月浦四村
月浦四村42號d寶山
樂業二村
春雷路332弄e寶山
月浦二村
月浦二村19號b寶山
陽光美林苑
月富路218弄c寶山
月浦六村
月浦六村7號f寶山
春雷路431弄小區
春雷路431弄b寶山
新月明珠園
塔源路150弄b寶山
盛橋三村
盛橋三村1號
gset @sq1='';
select @sq1:=concat(@sq1,'sum(if(xiaoqu=\'',xiaoqu,'\'',',1,0)) as ',xiaoqu,',') as col4 from (select distinct xiaoqu from loc) a
set @sq2=concat('select ifnull(company,\'total\') as companyname,count(distinct xiaoqu) as xiaoqucnt,',left(@sq1,length(@sq1)-1),' sum(xiaoqu) as total from loc group by company with rollup');
prepare statm from @sq2;
execute statm;
輸出結果
companyname
xiaoqucnt
慶安三村
月浦十村
盛橋三村
月浦四村
樂業二村
月浦二村
陽光美林苑
月浦六村
春雷路431弄小區
新月明珠園
totala1
1000
0000
000b
4010
0010
0110
c200
1000
1000
0d10
0010
0000
00e1
0000
1000
000f
1000
0000
1000
g100
1000
0000
0total101
1211
1111
10
SQL實現行轉列
需求 用sql實現行轉列。如下圖所示 行顯示的資料轉換成列顯示 實現行轉列的sql指令碼如下 select date format last day date format now y m d y m d as 業務日期,max case index code when ind20101001 th...
pandas實現行轉列
hive進行大資料分析資料經常用到行轉列,pandas也可以的。不解釋直接上 coding utf 8 import pandas as pd c df pd.dataframe c print df df left df key df values 0 df values str.split ex...
sql實現行轉列
行轉列不留空 select a as 訂單號 四川 as 位址 into result insert into result select a as 訂單號 成都 as 位址 union all select b as 訂單號 新疆 as 位址 union all select b as 訂單號 喀...