資料庫表翻轉90

2021-05-23 19:47:13 字數 1724 閱讀 7863

stuno cname                     mark

----- -------------------- ----------

1001

chinese                      

801001

english                      

801001

math                         

901002

chinese                      

881002

english                      

871002

math                         

901003

chinese                      

891003

english                      

871003

math                         

84用sql顯示成這種效果

學生編號      漢語       英語       數學

-------- ---------- ---------- ----------

1003

8987

841001

8080

901002

8887

90--

常規解決方法(適用於所有的資料庫)

select

distinct

a.id "學生編號", b.mark "漢語", 

c.mark "英語", d.mark "數學"

from

score a

inner

join

score b 

ona.id

=b.id 

andb.cname='

chinese

'inner

join

score c 

ona.id

=c.id 

andc.cname='

english

'inner

join

score d 

ona.id

=d.id 

andd.cname='

math

'order

bya.id;

--oracle解決方法(僅限於oracle資料庫)

select

id "學生編號",

sum(decode(cname,

'chinese

',mark,

null

)) "漢語",

sum(decode(cname,

'english

',mark,

null

)) "英語",

sum(decode(cname,

'math

',mark,

null

)) "數學"

from

score 

group

byid 

order

byid;

--此外自己還總結了兩種方法(適合sqlserver2005資料庫)

1。下圖為原始資料

2.下圖的表頭不可重新命名

3.下圖的表頭可以重新命名

BMC Reporting 9 0 資料庫遷移

bmc reporting 9.0 bmc proactivenet performance management9.0 oracle 11g r2 a 使用bmc reporting 9.0 搭建乙個相同的庫 b 修改配置檔案 c 重新註冊cell 開啟路徑 c bmc software bmcp...

Hat Linux 9 0下 oracle資料庫

結合網上的資源,然後實踐的結果 一。下面最好執行一下,不過我沒有用這兩句 sh oracle crs install rootdelete.sh sh oracle crs install rootdeinstall.sh 是直接執行下面幾個步驟 rm rf oracle主目錄 rm rf etc ...

90sec mysql MySQL資料庫之函式

函式 數字類獲取隨機數 rand mariadb sel select rand rand 0.3974576679966018 1 row in set 0.000 sec 隨機排序 mariadb sel select from grades order by rand name chinese...