close

SQL語法 

寫入檔案SQL

INSERT INTO TFZLIB/ZDL631N SELECT * FROM zdflib/zdF631 WHERE F63165 
='4386054'       

更新檔案並比對資料

UPDATE                                                          
zdf9881.zdf306 a                                                
set a.F30602 = (select x.f20104 from zdf9881.zdf201 x where     
a.f30601 = x.f20101) where exists(select * from zdf9881.zdf201 y
where  y.f20101 =a.f30601)      

跨資料庫

select * from  AS400_ZDF203@" + db.CrossDbLinkName_TG + @" B

select * from  AS400_ZDF203@TG_TO_INTRAT b

 加入排序 orderby

SELECT CS4601, CS4602 FROM csf46 ORDER BY CS4601 asc, CS4602 desc

切欄位

SELECT SUBSTR(F61702,1,10) as a10, SUBSTR(F61702,11,1) as a1, F61701, F61704, F61705, F61711 FROM ZDF1214t2    

SELECT CS4601, CS4602 FROM csf46 ORDER BY CS4601 asc, CS4602 desc

欄位合併

SELECT F61901 || F61902 k61901 FROM zdf619

CASE條件判斷

SELECT  
F00202,          --國日         
case WHEN  PT9902 is null THEN  F00205   else  'H' end  F00205     --假日否                 
from ZDFLIB.ZAF012                                                                                                         
LEFT JOIN ZDFLIB.PTF99 ON F00202 = PT9901                                                  
WHERE F00202 =  1070630                                                               
ORDER BY F00202 desc        

為查詢的結果加上排名序號(ROW_NUMBER,RANK,OVER)

SELECT row_number() OVER ( PARTITION BY F22C02 ORDER BY F22C02,  
F22C10) AS RID,F22C02,F22C10 FROM ZDFLIB/ZDF22C WHERE F22C10 > 0 

使用了 ROW_NUMBER()  及 Partition By  語法,ROW_NUMBER()  : 能夠將集資料進行排序,序號從1開始,Partition By  : 使用  ROW_NUMBER()  搭配 Partition By 引數能夠將資料集進行分割並且進行排序,序號從1開始。

Replace (str1, str2, str3)在字串 str1 中,當 str2 出現時,將其以 str3 替代。

SELECT replace (FB4101, '100', '200') as a1 FROM t176955.fbf41 

 

 

 

 

arrow
arrow
    文章標籤
    SQL 資料庫
    全站熱搜

    小J 發表在 痞客邦 留言(0) 人氣()