在线免费观看国产福利_A级毛片免费全部播放无码软件_fc国产日韩精品综合在线_一级毛片成人免费看完整版_久久亚洲热线2021精品_国产99视频精品免视看91_亚洲 欧美 制服 国产_男人的天堂最新网址_国产精品免费AV探花_中文字幕无码第1页

小助手科技_小程序定制開發(fā)圖片

小助手科技_小程序定制開發(fā)圖片

小助手科技_小程序定制開發(fā)圖片

小助手科技_小程序定制開發(fā)圖片

小助手科技_小程序定制開發(fā)圖片

在oracle中進行列行轉換

作者: 梧桐下細語
來源: http://spemc.cn
時間: Aug 19, 2020
當前位置:  小助手科技 > 資訊 > 在oracle中進行列行轉換

1、固定列數的行列轉換如

        student subject grade         ---------------------------

        student1 語文 80

        student1 數學 70

        student1 英語 60

        student2 語文 90

        student2 數學 80

        student2 英語 100

        轉換為

        語文 數學 英語

        student1 80 70 60

        student2 90 80 100

        語句如下:

        select student,sum(decode(subject,'語文', grade,null)) "語文",

        sum(decode(subject,'數學', grade,null)) "數學",

        sum(decode(subject,'英語', grade,null)) "英語"

        from table

        group by student

        2、不定列行列轉換如

        c1 c2         --------------         1 我

        1 是

        1 誰

        2 知

        2 道

        3 不         ......         轉換為

        1 我是誰

        2 知道

        3 不

        這一類型的轉換必須借助于PL/SQL來完成,這里給一個例子

        CREATE OR REPLACE FUNCTION get_c2(tmp_c1 NUMBER)

        RETURN VARCHAR2

        IS

        --用于返回值

        Col_c2 VARCHAR2(4000);

        BEGIN

        FOR cur IN (SELECT c2 FROM t WHEREc1=tmp_c1) LOOP

        Col_c2 := Col_c2||cur.c2;

        END LOOP;

        Col_c2 := rtrim(Col_c2,1);

        RETURN Col_c2;

        END;


上一篇: Oracle的分頁查詢

想了解更多?現在就開始免費體驗

請您留言
深圳市小助手科技有限公司
0755-82494862
小助手科技_姓名圖片
小助手科技_電話圖片
小助手科技_郵箱圖片
類型咨詢類型
小助手科技_類型圖片
0755-8249 4862
services@l-helper.com
深圳市福田區(qū)泰然八路18號安華工業(yè)園6棟705室
QQ交談 QQ交談
友情鏈接:
網站地圖
Copyright 2014-2020 深圳市小助手科技有限公司-版權所有
ICP備案號:粵ICP備15072167號-1