sql行列轉換

2021-07-05 17:34:36 字數 616 閱讀 1702

1、靜態的行轉列

sql**:

select

start_dt,

max(case type_name when '總的參與人數' then value end) as '總的參與人數',

max(case type_name when '會員參與人數' then value end) as '會員參與人數',

max(case type_name when '普免參與人數' then value end) as '普免參與人數',

max(case type_name when '首次參與活動的使用者數' then value end) as '首次參與活動的使用者數'

from v_stat_daily_activity_warrior

group by start_dt

轉換前:

轉換後:

更詳細參考:

sql行列轉換

問題 如果上述兩表互相換一下 即表結構和資料為 姓名 語文 數學 物理 張三 74 83 93 李四 74 84 94 想變成 得到如下結果 姓名 課程 分數 李四 語文 74 李四 數學 84 李四 物理 94 張三 語文 74 張三 數學 83 張三 物理 93 create table tb ...

SQL 行列轉換

資料列轉換成行。其中一列需要轉換成行,因為列的值不確定所以用動態執行sql sql物件拼寫出要轉換行的列的值。declare sql varchar 1000 select sql isnull sql advertise name from tbl advertise master select ...

SQL 行列轉換

參考自 表scores 請轉成的橫表是這樣子的 答案 select 姓名,sum case 課程 when 語文 then 分數 else 0 end as 語文,sum case 課程 when 數學 then 分數 else 0 end as 數學,sum case 課程 when 物理 the...