SqlServer行轉列
SELECT
examinee_name as '考官評分',
MAX(
CASE examiner_name
WHEN '考官1' THEN
SCORE
ELSE
0
END
) as '考官1' ,
MAX(
CASE examiner_name
WHEN '考官2' THEN
SCORE
ELSE
0
END
) as '考官2' ,
MAX(
CASE examiner_name
WHEN '考官3' THEN
SCORE
ELSE
0
END
) as '考官3',
MAX(
CASE examiner_name
WHEN '考官4' THEN
SCORE
ELSE
0
END
) as '考官4',
MAX(
CASE examiner_name
WHEN '考官5' THEN
SCORE
ELSE
0
END
) as '考官5',
MAX(
CASE examiner_name
WHEN '考官6' THEN
SCORE
ELSE
0
END
) as '考官6',
MAX(
CASE examiner_name
WHEN '考官7' THEN
SCORE
ELSE
0
END
) as '考官7',
t_kgpj_examinee.interview_score as '面試評分'
FROM
t_kgpj_grade ,t_kgpj_examinee
where t_kgpj_examinee.fname=t_kgpj_grade.examinee_name
GROUP BY examinee_name,t_kgpj_examinee.interview_score;
效果圖
其他需求
SELECT
examinee_id,
examinee_name,
考官1_402881135ff22b9d015ff230574a0000,
考官2_402881135ff22b9d015ff23057700001,
考官3_402881135ff22b9d015ff23057720002,
考官4_402881135ff22b9d015ff23057750003,
考官5_402881135ff22b9d015ff23057770004,
考官6_402881135ff22b9d015ff230577a0005,
考官7_402881135ff22b9d015ff230577c0006,
interview_score
FROM
(SELECT
examinee_id,
examinee_name,
score,
examiner_name + '_' + examiner_id AS nid,
t_kgpj_examinee.interview_score
FROM
t_kgpj_grade,
dbo.t_kgpj_examinee
WHERE t_kgpj_grade.examinee_name = t_kgpj_examinee.fname) AS g PIVOT (
AVG(g.score) FOR g.nid IN (
考官1_402881135ff22b9d015ff230574a0000,
考官2_402881135ff22b9d015ff23057700001,
考官3_402881135ff22b9d015ff23057720002,
考官4_402881135ff22b9d015ff23057750003,
考官5_402881135ff22b9d015ff23057770004,
考官6_402881135ff22b9d015ff230577a0005,
考官7_402881135ff22b9d015ff230577c0006
)
) T
相關推薦
sqlserver 行轉列(轉)
微軟 技術 all drop 記錄 記錄拆分 div student 數學 1、行轉列 微軟官方的圖: 方法二 -- 行轉列 DROP TABLE studentB; CREATE TABLE studentB (姓名 varchar(10),語文
sqlserver 行轉列、字串行轉列、自動生產行轉列指令碼
行轉列,老生常談的問題。這裡總結一下網上的方法。 1、生成測試資料: CREATE TABLE human( name NVARCHAR(5), --姓名 norm NVARCHAR(5), --指標 score INT , --分數
ASP.NET SQLServer 行轉列,不固定列,動態列 的實現
前言 剛開始工作就成了被溫水煮的青蛙的話,那該有多難吃啊。所以要保持冷靜的頭腦,好好思考自己該做的不該做的事,好好的提升自己的能力,給自己加點料。嗯,這樣就算真被煮熟了,也會可口很多吧。 問題背景 這個問題是前面工作中遇到的,經過一番努力最終解決了。在
SqlServer行轉列
SELECT examinee_name as '考官評分', MAX( CASE examiner_name WHEN '考官1'
sqlserver行轉列與列轉行(PIVOT與UNPIVOT)
PIVOT用於將列值旋轉為列名(即行轉列),在可以用聚合函式配合CASE語句實現 PIVOT的一般語法是:PIVOT(聚合函式(列) FOR 列 in (…) )AS P 完整語法: table_source PIVOT( 聚合函式(value_column) FOR p
SqlServer PIVOT函式快速實現行轉列,UNPIVOT實現列轉行
我們在寫Sql語句的時候沒經常會遇到將查詢結果行轉列,列轉行的需求,拼接sql字串,然後使用sp_executesql執行sql字串是比較常規的一種做法。但是這樣做實現起來非常複雜,而在SqlServer2005中我們有了PIVOT/UNPIVOT函式可以快速實現行轉列和
sqlserver報表統計——引數化動態PIVOT行轉列
先列出所有表結構: --title 報表 --table 實收水費:hx_t_received --欄位 收費部門id:hx_fdepartmentid 1、收費部門名稱:hx_fdepartmentname 應收水費資訊ID:hx_freceivableid --
SQL行轉列
png 英語 姓名 create case when src clas 行轉列 序號 一、使用場景 當系統中有匯總和明細的需求時,一般通過SQL來實現,匯總 就是 根據條件顯示出全部的數據,明細 就是 一條匯總對應的詳細信息。 行轉列通常用於實現明細的時候。
mysql 行轉列
行轉列最近遇到一需求原始數據如下:mysql> select id,sdkname,sid,date,total_count from u1ge_query_log;+------+----------------+------+------------+-------------+| id | s
sql內置函數pivot強大的行轉列功能
子查詢 註意 ges 中一 rom cnblogs blog 聚合函數 星期六 http://blog.csdn.net/xb12369/article/details/8149608 http://www.cnblogs.com/lwhkdash/archive/20
T-sql 行轉列,數據庫查詢分頁
tput substr between dep and alt rom img lec 1 USE [APS_Future_FT] 2 GO 3 /****** Object: StoredProcedure [dbo].[A_CrudePrice] Scr
轉換一個字段中含有多個另外一張表的id | | 行轉列
ret .net sub 模式 end posit tex 匹配 replace 1、Oracle Function --入參:表 id /* cxcyxm02 :操作表,含有一個存儲另一張表(xs0101)多個主鍵id的字段 ids :操作表的主鍵 i
Oracle 行轉列
cat pre case nbsp 運用 分隔 nvl ase partition 一、簡易運用 ——>沒轉之前一個主號綁定多個副號的多行輸出(像移動的歡樂在線) SELECT f.town_name 鎮區, f.school_name 學校,
Oracle根據【日期】組,其他條件根據PIVOT行轉列。使每個日期條件關聯的其他數據只有一行。
col acl time pivot per clas 一行 crop group select OPER_TIME, MICROPAY, REFUND from ( select trunc(oper_time) oper_time,
SQL行轉列經典例子(轉載)
htm har server2 str union sdn ltrim sql ue4 行轉列問題總結 1、行轉列 ---1、最簡單的行轉列 /* 問題:假設有張學生成績表(tb)如下: 姓名 課程 分數 張三 語文 74 張三 數學 83 張三 物理 93 李
mysql行轉列轉換
pan where mys 作用 統計 detail null 這就是 英語 http://blog.csdn.net/sinat_27406925/article/details/77507478 mysql 行列轉換 ,在項目中應用的極其頻繁,尤其是一些金融項目裏的報表
oracle 存儲過程-動態行轉列,解決。
pla gin sel rom con left join from blog creat 包頭 create or replace package pro_test as TYPE out_cursor IS REF CURSOR; procedure A
sql的行轉列(PIVOT)與列轉行(UNPIVOT)
列轉行 gif 而且 碼農 實現 score username info rect 在做數據統計的時候,行轉列,列轉行是經常碰到的問題。case when方式太麻煩了,而且可擴展性不強,可以使用 PIVOT,UNPIVOT比較快速實現行轉列,列轉行,而且可擴展性強
sql service 行轉列操作
ice pack 通過 group by img ora _id select package 通過行換列處理之後: SELECT s.AREA_NAME, max(CASE s.TYPE WHEN ‘CPU‘ THEN s.PRICE ELSE 0 end)CPU,
MySQL行轉列與列轉行
展示 course order by rem core null innodb tail mysql 行轉列 例如:把圖1轉換成圖2結果展示 圖1 圖2 CREATE TABLE `TEST_TB_GRADE` ( `ID` int(10) NOT NU