Upload
nguyennguyet
View
242
Download
4
Embed Size (px)
Citation preview
IBM
DB2 fKP
DB2 fKP
*j$
\q"*hS\qG-R9kWm@/H( =J ) r4HQKJk]O"0bCF,: 983Z
\!
\!
h1O O8aK . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1\qNP]IT . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3\qNHQ}! . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3=JNQlHzQNU# . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4SQL 8` . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4=8^NI_} . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4.gG
\!
Cll89?< . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 103s> . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 113[9HQtN2H . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 118PL/I"C"*hS COBOL K*1k[9H=$ . . . . . . . . . . . . . . . . . . . . . . . . . . 121
| Xt . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1230 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 129Rt . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 147!wro . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 159SQL KFA9k*W7gs . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 160
h4O H_~_Xt . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 171sXt . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1749+i
\!
| CREATE PROCEDURE . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 531CREATE STOGROUP . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 544CREATE SYNONYM . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 547CREATE TABLE . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 549CREATE TABLESPACE . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 573
| CREATE TRIGGER . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 591CREATE VIEW . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 602DECLARE CURSOR . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 609DECLARE STATEMENT . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 614DECLARE TABLE . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 616DELETE . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 619DESCRIBE . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 625DESCRIBE CURSOR . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 632
| DESCRIBE INPUT . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 634DESCRIBE PROCEDURE . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 637DROP . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 640END DECLARE SECTION . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 654EXECUTE . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 656EXECUTE IMMEDIATE . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 659EXPLAIN . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 661FETCH . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 674
| FREE LOCATOR . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 677GRANT . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 678GRANT (8gC") . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 681GRANT (G
\!
| REVOKE (9-
\!
| SYSIBM.SYSCONSTDEP = . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 877SYSIBM.SYSCOPY = . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 878SYSIBM.SYSDATABASE = . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 881
| SYSIBM.SYSDATATYPES = . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 883SYSIBM.SYSDBAUTH = . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 884SYSIBM.SYSDBRM = . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 887SYSIBM.SYSDUMMY1 = . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 889SYSIBM.SYSFIELDS = . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 890SYSIBM.SYSFOREIGNKEYS = . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 892SYSIBM.SYSINDEXES = . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 893SYSIBM.SYSINDEXPART = . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 896SYSIBM.SYSINDEXSTATS = . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 898SYSIBM.SYSKEYS = . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 899
| SYSIBM.SYSLOBSTATS = . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 900SYSIBM.SYSPACKAGE = . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 901SYSIBM.SYSPACKAUTH = . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 907SYSIBM.SYSPACKDEP = . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 909SYSIBM.SYSPACKLIST = . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 910SYSIBM.SYSPACKSTMT = . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 911
| SYSIBM.SYSPARMS = . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 913SYSIBM.SYSPKSYSTEM = . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 915SYSIBM.SYSPLAN = . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 916SYSIBM.SYSPLANAUTH = . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 920SYSIBM.SYSPLANDEP = . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 921SYSIBM.SYSPLSYSTEM = . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 922SYSIBM.SYSPROCEDURES = . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 923SYSIBM.SYSRELS = . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 925SYSIBM.SYSRESAUTH = . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 926
| SYSIBM.SYSROUTINEAUTH = . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 928| SYSIBM.SYSROUTINES = . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 929| SYSIBM.SYSSCHEMAAUTH = . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 935
SYSIBM.SYSSTMT = . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 936SYSIBM.SYSSTOGROUP = . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 938SYSIBM.SYSSTRINGS = . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 939SYSIBM.SYSSYNONYMS = . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 940SYSIBM.SYSTABAUTH = . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 941SYSIBM.SYSTABLEPART = . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 944SYSIBM.SYSTABLES = . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 947SYSIBM.SYSTABLESPACE = . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 951SYSIBM.SYSTABSTATS = . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 954
| SYSIBM.SYSTRIGGERS = . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 955SYSIBM.SYSUSERAUTH = . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 956SYSIBM.SYSVIEWDEP = . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 959SYSIBM.SYSVIEWS = . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 960SYSIBM.SYSVOLUMES = . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 961SYSIBM.USERNAMES = . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 962
U?E. SQL =sl . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 963
\! vii
\!
U?F. f
h1O O8aK
\qNP]IT . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3\qNHQ}! . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3=JNQlHzQNU# . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4SQL 8` . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4=8^NI_} . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4.gG
2 DB2 UDB 5
\qNP]IT
\qO"DB2 fKP
=JNQlHzQNU#
\qGO"DB2 fKP
required_item
$U*r`\ (optional_item) O"g~hjN*r
`\Og~hj
.gG
"kU!YCHgNrb,,WKJj^9# \YKD$FO"DB2 "Wj1
DB2 I}Njz- Nh 3 t (h 1 ,) GO"DB2 79F`XN"/;9*hS DB2bNG
| http://www.software.ibm.com/data/db2/os390
| DB2 qA| DB2 fKP
| f
| $si$s}WKhCF"}WN8g,f
| f
| ODBC "Wj1
| IC!=
| h 6 GHh 5 GN>}Nf
h6O, 9F
656Z
DB2 N50
h2O DB2 N50
=$=Hq@l . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 19E* SQL . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 190* SQL . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 19x(V-H_~_ SQL . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 19PC0 SQL . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 20
| DB2 *
DB2 N50
18 DB2 UDB 5
DB2 N50
=$=Hq@l
=$=Hq@l (SQL) O"jl
DB2 N50
PC0 SQL\qGO"PC0 SQLHO"SPUFIJU!$k~OrH& SQL h}Wm0i`KXBTMj5lk SQL 9F
DB2 N50
9-0G9#
9-
DB2 N50
wz
| wz O"p\=^?Odu=NTKP9k]$s?l"1 s^?O#tsNG
DB2 N50
F-0=rF=
K9k3HbG-^9#
0=G"k=""k$O0=G"k=#
h2O DB2 N50 23
DB2 N50
2H~| X"9k=l>lN=,=N=+HN0T,/J/Hb 1 TO"kT#
>0T FT,/J/Hb 1 TO"kT#
0TG"kT""k$O0TG"kT#
+J2HT =NT+HNFG"kT#
+J2H= 1lN2H)sNfGF=G"kH1~K>0=Gb"k=#3N)
sN3HO"+J2H)s HFS^9#
2H]4N,'O"J0TK^GAB5l^9#
SET NULL NlgO"D NfN P NF>0TN0t-0=Go|,', SET NULL Nlg"D Oo|`nKX?5;ilk@1GOJ/"o|`nfK D NT,975lkD=-b"j^9#
D , P N>0=Go|,', CASCADE Nlg"D Oo|`nKX?5;ilk@1GOJ/"o|`nfK D NT,o|5lkD=-b"j^9# D NT,o|5l?lgO"P No|`n, D KAB5l?H@$^9#D ,F=Gb"klgKO"eR7?hV,"5iK D N>0=K,Q5l^9#
24 DB2 UDB 5
DB2 N50
P XNo|`nKX?9k=O"9YF P Ko|\3 7F$k"HFPl^9#7?,CF"=, P N>0=G"k+"^?O"P +iNo|`n,"?9k=N>0=G"klgKO"=N=Oo|\35lF$k3HKJj^9#
!:)s
!:)s HO"=NFTN 1 D^?O#tNsK~O9k3H,G-kMrXj9k,'G9# !:)sO$UXjG"j"SQL 9FO"T Ns>rXj7J1lPJiJ$"H$&3H,"j^9#cKD$FO" DB2 I}Njz- Nh 2 t (h 1 ,) r2H7F/@5$#
=KO!:)s,$/D"CFb=$^;s#J
DB2 N50
| Hj,
DB2 N50
SeCF,`5l^9#91LRNG9O"18 P$HG9# ;1LRNG9O"8 P$HG9# 3liN95)BKO"hZj1LRNH%8zO^^l^;s#
91LR+;1LR+O"=l,=9bNKhCFh^j^9# ?H(P"-1h0k0O;1LRG9#l}"s$~N=>O91LRG9#X?>,'YG"1LR,?
r=93H,G-kN+"*hS"k?$Wr=91LR,91LR+;1LR+KD$F
b@7^9#
G
?>,'
| 3 t,>rHQ7",6G
?>,'
database-name G
?>,'
| -G9# 3 V\Nt,O91LRG9# Ft,O,:Tj*| IGhZj^9#
| 2 DNt,+iJkWm7
?>,'
table-name =r(9$~>^?Os$~>#
04$~N=>O 3 DNt,+iJk>0G9# GiNt,O"=,]I5lF$k DBMS r(9m1G9# 2 V\Nt,O"=Nj-Tr(9vD ID G9# 3 V\Nt,O91LRG9# Ft,O,:Tj*IGhZj^9#
2 DNt,+iJk=>O"=T5
?>,'
Nm1G9# 2 V\OvD ID G9#3lO"55ZOE[K$~5l^9#>0r$~9k,'O">0,1L9k*V
8'/HN?$WKhCF[Jj^9#
| s$~NL>"wz"="*hSSe0| s$~NL>"wz"="*hSSe0O"!Nh&KE[K$~5l^9#
E* SQL 9F
9-
L>H1Al
| CURRENT PATH Cll89?
vD ID HvD>
L>O"=T50KjAG-^9#1AlO"{8N=^?OSe0K7+jAG-^;s#
=^?OSeO"INvD ID KhCFbH&3H,G-k$~>G9#1AlO"3lrn.7?vD ID KhCF7+H(J$s$~>G9#
"k DB2 5V79F`GjA5l?L>O"LN DB2 5V79F`GbH&3H,G-^9#1AlO"=l,jA5l? DB2 5V79F`G7+H(^;s#
L>rH&~O"=l,(7F$k>0,$jANlg""k$O=N>0,=T5
sH,`w5l"BT5lk~N SQL vD ID O SMITH G9# KEENE O"GRANT 9FG9#
GRANT 9F
vD ID HvD>
OJ/"Wis^?OQC1
vD ID HvD>
Wis*hS=NX"9kQC1
vD ID HvD>
| E[$~: 9H""*hSwz>NE[$~RKbJj^| 9#
| BT0n,,Q5lJ$lgK)B5lk9F
vD ID HvD>
| j^;s# "Wj1
vD ID HvD>
vD ID Q93l^GNb@GO"3 DNvD ID KD$F@Z7^7?# 9JoA"f
G
G
G
G
G
G
G
G
G
G
G
G
G
G
G
G
G
G
djvFHfS
| = 8. H_~_G
djvFHfS
Ni;Kb,Q5l^9#84Z
djvFHfS
tMdjvF
tMdjvFNp\,'O"10 Jt^?O0tN0tt,rZjNFk3HOG-J$H$&3HG9# 10 JtN.tt,O",WK~8FZjNFil^9#
10 Jt^[email protected]@tOBtr5NKO=7F$J$NG"b0.t@Ns^?OQtK 10 Jt^?O0trdjvF?kLO"5NtMH18KJiJ$lgb"j^9#
b0.t@t^?O 10 Jt+i0tX1:Yb0.t@tr0tKQ99klgO"-ztzN 7 e\G]a,Tol",WK~8F"-ztzN 7 e\+itMN*oj^G
djvFHfS
J
djvFHfS
il^9# 3NQ9K*$FO":Yr 16 K9k?aK",WK~8FtMNvxK
djvFHfS
MOVE 12345 TO A.
9Hjs0NdjvF=},9Hjs0G"klgK"J
djvFHfS
9Hjs0,57$A0N.gG
djvFHfS
J
djvFHfS
| T ID NdjvF| T ID NMO"T ID G
djvFHfS
| !K"2 DN= TABLE1 H TABLE2 r"18J
djvFHfS
tMfS
tMOetfS5l^9#9JoA"df,M85l^9# ?H(P"-2 O +1 hj.G9#
l}NtM,0tGb&l}, 10 JtNlgO"0trl~*K 10 JtKQ97F+i"fSrT$^9#
LhjN[Jk 10 JtrfS9klgO"IAi+l}NtMN.tt,Net,b&l}NtMH18KJkh&K=NtMNvxKl~*K}HbuNlg""k$OP~9kP$H,9YFy7$lgKy7/Jj^9# u9Hjs0OVis/N9Hjs0H18G9# 2 DN9Hjs0,y7/J$lg"=NX8J9JoA"IAi,g-$Mr}D+KO"9Hjs0N8CFT$^9# ASCII G
djvFHfS
95N[Jk 2 DN3N9YFNsO18U#
djvFHfS
9Hjs0N8z,Q9G-J$lg""k$OHQ7? SYSSTRINGS =K"fS9k*ZisIN 2 DN CCSID KX9kps,^^lF$J$lgKO"(i
djvFHfS
| =12 O"-zJfSH5zJfSNcr(7F$^9# 3NcGO"J
djvFHfS
| = 12 (2/2). Cl?$Wr^`-zJfSH5zJfSNc
| SQL 9F| CAST(DATE('A6/12/1999') AS CAMP_DATE);
| O$| 9Hjs0jt '06/12/99' ,Cl?$W| CAMP_DATE K-c9H5l">}NM,18C| l?$WKJj^9#9Hjs0jtr"=
kLNG
kLNG
jt
| |U~o*ZisI| DATE ?$WO"LN DATE ?$W""k$O|UN-zJ9Hjs0==,~CF$k| $UN CHAR ^?O VARCHAR 0H_9-,"j^9#kLNG
jt
=8^GHQ7F$k0t H$&QlO"dfr^`3HNG-J$0jtr=7F$^
9#
b0.t@jt
b0.t@jt O"2 DNtMr E G,1?A0Gb0.t@trXj7^9#GiNtMKO"dfH.t@r~lk3H,G-^9#2 V\NtMKO"dfO~lil^9,".t@O~lil^;s#jtNMO"GiNtMH"2 V\NtMGXj5l? 10 N_hMHNQG9# 3NMO"b0.t@tNOObKJ1lPJj^;s# jtNfN8zt
O"30 r6(FOJj^;s#hTl5 H 2" 4 H 0" 2 H 0"23 H 2 G9#
A25.5A 1AAA. -15. +375893333333333333333.33
8z9Hjs0jt8z9Hjs0jt ODQ98z9Hjs0rXj7^9#8z9Hjs0jtKO"J
s>
s>NU#O"=N8.KhCFQoj^9#s>OJ0rk@9kJCREATE TABLE 9FO"Xt,,Q5lk0kO=N=.,,Q5lkFT^?O0k CODE KhCFXj5lkMO"=NTN CODE sNMG9#
| sN>0rQ99k (FROM 8aG2H9k=NjX8a GH&lgJI)#
$~5l?s>s>N$~RKO"=>"Se"L>"1Al""k$OjX>rH&3H,G-^
9#
s>r$~G-k+I&+b"=NU#H1MK8.KhCFh^j^9#
COMMENT ON 9FOf
s>
| jX>O"=l,jA5lF$k8.K*$FN_"="Se^?OSer;/7?>0H7
FH&3HbG-^9# 0RNcGO"X.MYTABLE H~O9kNr 1 s@1GQ^;k?a@1K"Z rHQ7F$klgbM(il^9#
| FROM 8aNjX>NHQKhCF"kL=NsKX"U1ks>Nj9HrXj9k3H| ,G-^9#jX>NlgH1MK"j9H9ks>O"SELECT 9F0GJ1lPJj^;s#?H(P"DEPT =bNGiNsN>| 0, DEPTNO G"kH7^9#J$~R
| Xt"GROUP BY 8a"ORDER BY 8a"0"^?O!wroN8.NfGO"s>O| "k="Ser| $~9k 1 DN}3O"=Ns,IN=K"ksJN+r(93HK"j^9#
=XjR: CjN*V8'/H=rXj9k$~Rr=XjR HFS^9#*V8'/H=r1L9k8aO"*V8'/H=N=XjRb_j7^9# ?H(P"SELECT 8abN0N*V8'/H=O"!N9F"Se"M9H5l?=N0"^?O=XtK3/jX>O=XjRG9# 7| ?,CF"Z O=XjRG"j"SELECT NemK"kGiNs>r$~7F$^9#
jX>,eK3+J$ =>^?OSeO=XjRG9# 7?,CF"$~5l?=>N DSN8610.EMPPROJACT O=XjRG"j"EMPNO sr$~7F$^9#
DB2 SQL GN$jA2H^?O"$^$2HNI_: s>,sNMr2H9klgKO"=N>0r}Dsr^sG$k*V8'/H=O 1 D@1GJ1lPJj^;s#!Nh&Ju7O"(i0r}Dsr^sG$k*V8'/H=,J$lg# 2HO$jAHJj^9#
=XjRGs>r$~7FO$k,"(5l?=KXj7?>0Ns,J$lg# 3Nlgb"2HO$jAHJj^9#
114 DB2 UDB 5
s>
>0r$~7F$J$eK"=N>0r}Ds,#tN*V8'/H=K^^lF$klg# "$^$J2HH$&3HKJj^9#
"$^$J2HO"DLKjA7?=XjRrHCFs>r$~9k3HGI_7F/@5
$# [Jk>0N#tN*V8'/H=K^^lF$ksNlgKO"=>rXjRH7F
HQ9k3H,G-^9#
#tN*V8'/H=r"18=NL9N$s9?s9H9k3H,G-^9#1lN=K
P7F n DN2Hr^sG$k FROM 8aKO"/J/Hb n - 1 DNG-NjX>r~lk,W,"j^9#
?H(P"J$~R
{*r O"HqN 1 DNA0G"CF"5^6^J SQL 9FG"kH9kH"C"T.C"^?O Q.C H$&A0K9k3H,G-^9#?@7"s$~s>A0NjX2HOI$}!HO@(^;s#JK9k3Hr0sH7F$^9#
$~5l?s> Q.C O"!N 3 DNro,~?5l?lgKBj"jX2HHJj^9#
{HqN!wroG Q.C ,HolF$k# Q ,"=N{HqN FROM 8aGHolF$k=r(9bNGJ$3H# Q ,"hjbLN$:l+NlYkGHolF$k=r(9bNG"k3H#
Q.C O"Q ,=^?OSerH&h&K7F/@5$# Q ,#tNlYkG=rXj9k?aKHolF$klg"Q.C O=l,^^lF$k{Hq,~CF$kGclYkr2H7^9#
h3O @lWG 115
s>
?H(P"!N9FH7F_j7F$kKGiN FROM 8aNlYkK"k=DSN8610.EMP N WORKDEPT NMr2H7^9#. 3N9FOoK>\*J>0G9#jX>,eK3+J$=>| ^?OSeb>\*J>0G9#
IBM SQL *hS ANSI/ISO SQLGO"FROM 8abN>\*J>0OG-N>0GJ1lPJj^;s#^?"s>N$~RO>\*J>0K7J1lPJj^;s#
s>$~RN2HjjN+D1}N,'O"J"2 t,>"^?O 3 t,>K7F"Q.C ,{*r S bNs>r(9h&K7^9# Q O"S r^sG$k9F
s>
r^`{*rN FROM 8aNfN9YFN>0HfS5l^9#{*r,{HqG"klg"Q O=N{Hqr^sG$k{*rN FROM 8aN9YFN>0HfS5l^9#J0,^^lF$klg"=N8aNfGNfSO8+i&XTol^9#
c. Q N2HhO"J,rh5lk0K,Q5l^9# !wA0N UPDATE 9FN8aH18G9#
h3O @lWG 117
[9HQtN2H
[9HQtN2H
[9HQt O"SQL 9F
[9HQtN2H
SELECT 9F
[9HQtN2H
| $lgKO"LOB m1
PL/I"C"*hS COBOL K*1k[9H=$
| kL;CH&m1
PL/I"C"*hS COBOL K*1k[9H=$
[9H=$,81[shj m D@1>,KQtr}CF$klg"[9H=$NGeN mDNQtO81Qtr}A^;s# [9H=$,}CF$kQtNt,81[s,}CF$
kthjb m D@1/J$lg"81[sNGeN m DNQtO5k5l^9# 3liN,'O"[9H=$KP9k2HK81Qt,^^lF$klg""k$O[9HQtKP
9k2HK81[s,^^lF$klgKb,Q5l^9# 81[s^?O81QtrXj
7F$J1lP"[9H=$NQtO81Qtr}A^;s#
=$2HN>K"PL/I"C"*hS COBOL ND9N[9HQt^?O81Qtb"$~>KhCF2H9k3H,G-^9# $~5l?A0O"[9H1LRNeK"Tj*IHL
N[9H1LRr31?AG9# GiN[9H1LRO=$rXj7J1lPJj^;s#
^?"2 V\N[9H1LRO"=N=$bN[9HQtrXj7J1lPJj^;s#
PL/I"C"*hS COBOL GN[9HQt N=8O"J
Xt
| Xt
| Xt HO"Xt>NeK"gLGO^l?
Xt
| sXt Ou1hC?z-tKX9k1lMNkLra7^9#z-tO"1 HN`wM| (?H(P"sNM) G9#sXtOmWXt HFPlklgb"j^9#H_~_Xt| Hf
Xt
| e-N=8G"expression O9+i
Xt
| m0i`NQC1
Xt
| K"kG
Xt
| Xt 4 NQia
0
0
0 GOMrXj7^9#0NA0OJ}Hb""ki;Rr=7^9#D~J^?O"qKhCFOD~NeojKHQ7J1lPJiJ$8z14)rH&H""k DBMS +iLN DBMS KO5lk9F
0
| (G
0
kLN CCSID O"320Z
0
2 DN0t*ZisIKhk;Qi;;Qi;RN>}N*ZisI,0tNlg"i;O 2 JtGTol"kLOg0tHJj^9# |;N>jO:ol^9# 0tN;Qi;J1`idfr^`KNkLO"g0tN
OObKJ1lPJj^;s#
0tH 10 JtN*ZisIKhk;Qi;l}N*ZisI,0tG"b&l}, 10 JtNlgO"0trl~*KLhj, 0 GJ
0
| DYNAMICRULES NP$sI0n"jA0n"^?OFSP70n,,Q5l"| 3~QMk&U#}N*ZisIN:Y, 15 r6(klgO":Y,.5$}N*ZisIrl~*K3T*ZisIN:Y,18lgKO"h 2 *ZisI,*r5l^9# 3TO1MK,Q5l^9#=NQ9HO"3T*ZisIN:Y,18lgOh 1 *ZisINMr=9bNH7^9#n N 31 e==NfNhT
0
g-JtMN31e==K*1khT
0
b0.t@*ZisIrHQ9k;Qi;;Qi;RNIAi+N*ZisI,b0.t@tNlg"i;Ob0.t@tGTol^
9# *ZisIO",WG"lP"^:O8aK\:Yb0.t@tKQ95l^9# 7?
,CF"0NWGH7Fb0.t@t,"klg"0NkLO\:Yb0.t@tHJj^
9#
b0.t@tH0t,X89ki;O"0trl~*K\:Yb0.t@tKQ97?=N
3T
0
|U|V
|U|V HO/t"nt"*hS|tr=9bNG"DECIMAL(8,0) NtMH7F==5l^9# 3NtM,57/ra5lk?aKO"yyyymmdd A0KJCF$J1lPJj^;s#yyyy O/t"mm Ont"dd O|tr=7^9#HIREDATE -BIRTHDATE H$&0Nh&K""k DATE Mr LN DATE M+iz$?kLO"|U|VHJj^9#
~o|V
~o|V HO~Vt",t"*hSCtr=9bNG"DECIMAL(6,0) NtMH7F==5l^9# 3NtM,57/ra5lk?aKO"hhmmss A0KJCF$J1lPJj^;s#hh O~Vt"mm O,t"ss OCtr=7^9#"k TIME MrLNTIME M+iz$?kLO"~o|VHJj^9#
?$`&9?sW|V
?$`&9?sW|V HO/t"nt"|t"~Vt",t"Ct"*hS^$/mC
tr=9bNG"DECIMAL(20,6) NtMH7F==5l^9# 3NtM,57/ra5lk?aKO"yyyyxxddhhmmsszzzzzz A0KJCF$J1lPJj^;s#yyyy"xx"dd"hh"mm"ss *hS zzzzzz O=l>l"/t"nt"|t"~Vt",t"Ct"*hS^$/mCr=7^9#"k TIMESTAMP MrLN TIMESTAMPM+iz$?kLO"?$`&9?sW|VHJj^9#
SQL K*1k|U~oN;Qi;|U~oMGT(k;Qi;O"C;H:;N_G9# |U~oM,C;N*ZisIG"
klg"b&l}N*ZisIO|VGJ1lPJj^;s# |U~oMKC;i;RrH
&lgN,'O"qN*KOJ
0
h 1 *ZisI,?$`&9?sWNlg"h 2 *ZisIO"?$`&9?sW"?$`&9?sWN9Hjs0=="^?O|VGJ1lPJj^;s#
h 2 *ZisI,?$`&9?sWNlg"h 1 *ZisIO"?$`&9?sW^?O?$`&9?sWN9Hjs0==GJ1lPJj^;s#
:;i;RN*ZisIO"=NIAibQia
0
|UN}:: |UK|Vr-7?kL""k$O|U+i|Vrz$?kLO"=l+N,|UHJj^9#J3Ni;GO"nO+ls@
0
~oN;Qi;~oO":;"},W;"^?O:,W;rT&3H,G-^9#
~oN:;: LN~o(TIME1)+i"k~o(TIME2)rz$?kLO"3N 2 DN~oVN~Vt",t"*hSCtrXj9k~o|VHJj^9#kLNG
0
~o|VO"5GbiGb"~oK-7?j"~o+iz$?j9k3H,G-^9# kL
O"Xj7?~Vt",t"Ct,@13NgxG}:5;?~oKJj^9# 7?,C
F"TIME1 + XJX O DECIMAL(6,0) N5NtKO!N0H1yG9#
TIME1 + HOUR(X) HOURS + MINUTE(X) MINUTES + SECOND(X) SECONDS
?$`&9?sWN;Qi;?$`&9?sWO":;"},W;"^?O:,W;rT&3H,G-^9#
?$`&9?sWN:;: LN?$`&9?sW (TS1)+i"k?$`&9?sW (TS2 )rz$?kLO"2 DN?$`&9?sWVN/t"nt",t"Ct"*hS^$/mCtrXj9k?$`&9?sW|VHJj^9#kLNG
0
i;NgxgLNfN0,GiK>A5l^9# >ANgx,gLGXj5lF$J$lgKO"\,
i;R,h;H|;hjhK,Q5l"h;"|;"*hS"k,C;H|;hjhKTo
l^9# 18gxlYkK"ki;RO"8+i&X,Q5l^9#
c 1:
1.1A L (SALARY + BONUS) + SALARY / :VAR3
(2) (1) (4) (3)
Example 2: 3NcGO"GiNi; (CONCAT) ,"QtN YYYYMM H DD K~CF$k8z9Hjs0rkSU1F"|Ur=9 1 DN9Hjs0K7^9#!K"2 V\Ni; (-) ,"DATECOL Gh}5lF$k|U+i=N|Urz-^9# kLO"2 DN|UNVGPa7?~Vr(9|U|VG9#
DATECOL - :YYYYMM CONCAT :DD
(2) (1)
CASE 0
ELSE NULL CASE searched-when-clause END simple-when-clause ELSEresult-expression
searched-when-clause: % WHENsearch-conditionTHEN result-expression NULL
simple-when-clause: .0 % WHEN0THEN result-expression NULL
CASE 0rHQ9kH"1 DN0r 1 D^?O#tNroN>AKpE$F*r9k3H,G-^9#lLK"CASE 0NMO?HJC?GiN ( 8< )N CASE K3/result-expression NMKJj^9#IN CASE b?KJi:"ELSE -
0
searched-when-clause>ANP]H7F8_9k=l>lNTH=G
0
c 2 (searched-when-clause): CASE 0rHQ7F
0
| CAST XjO"h 1 *ZisI (-c9H&*ZisI) r"h 2 *ZisIKhCFXj| 5l?G
0
| cast XtNrh: DB2 O9-*hS?
0
| !P7^9#?H(P"Jr SCHEMA1 (AGE H$&>0NCl?$Wr^sG$F"f
Rt
Rt
Rt O"Xj5l?T^?O0k
Rt
x H y H$&MNlg'
Rt J y x O y hjg-$#x >= y x O y hjg-$+y7$#x y x O y hjg-/J$#
]j-f () "k$OCjNqG=NeojKHoJ1lPJiJ$8z17O""k DBMS+iLN DBMS KO5lk9F4 (SELECT AVG(SALARY) FROM DSN861A.EMP)
?MfSRt
expression = SOME (subselect) ANY > ALL =
Rt
{*rGa5l?M,J$lg"^?OXj7?X8,{*rKhja5l?9YFNMKD$F?NlgK"?HJj^9#
Xj7?X8,{*rKhja5l?MKD$F6NbN,"/J/Hb 1 D"klgK"6HJj^9#
Xj7?X8,{*rKhja5l?MKD$F6NbN,J/"LkMN?aKT@HJC?fS,/J/Hb 1 D"klgK"T@HJj^9#
SOME ^?O ANY rXj7?lg"RtNkLO!Nh&KJj^9#
Xj7?X8,{*rKhja5l?MKD$F?NbN,/J/Hb 1 D"klgK"?HJj^9#
{*rGa5l?M,J$lg"^?OXj7?X8,{*rKhja5l?9YFNMKD$F6NlgK"6HJj^9#
Xj7?X8,{*rKhja5l?MKD$F?NbN,J/"LkMN?aKT@HJC?fS,/J/Hb 1 D"klgK"T@HJj^9#
c: !N=rHQ7F"J ANY(SELECT COLB FROM TBLB)
c 3: J SOME(SELECT COLC FROM TBLB)
c 5: J3)
c 6: J
Rt
COLA < ANY(SELECT COLB FROM TBLB WHERE COLB>3)
COLA , TBLA N 1 D^?O#tNTGLkMG"C?lg"9YFNTN TBLA KD$FRtO6N^^G9#
BETWEEN Rt
expression BETWEENexpressionANDexpression NOT
BETWEEN RtO"Xj7?M,":gGXj7?LN 2 DNMNVK"k+I&+r=L7^9# 3NRtN 2 DNA0O=l>l"!Nh&J1yN!wror}CF$^9#
3NRtO' M 1 BETWEEN M 2 AND M 3&-N!wroKjv7^9# M 1 >= M 2 AND M 1
Rt
EXISTS Rt
EXISTS(subselect)
EXISTS RtO"CjNTN-5rF9H7^9#
3NRtNkLO"{*rKhja5l?kL=K 1 TGb^^lF$lP"?HJj^9#=lJ0NlgO"6NkLHJj^9#
{*rbN SELECT 8aO"{*rGa5lkMO5k5lkNG"sr$/DGbXj9k3H,G-^9# !N8arH(PJ1G9#
SELECT L
NULL"LIKE"*hS IN NFRtHO[Jj"EXISTS RtKO NOT H$&lr^`A0O"j^;s# EXISTS Rtr]j9klgO"!Nh&K@}i;RN NOT r=N0KV$F/@5$#
NOT EXISTS (subselect)
3NlgO"EXISTS Rt,?N~K6NkLHJj"Rt,6N~K?NkLHJj^9# 33GO"NOT O@}i;RG"j"RtNltGO"j^;s#@}i;RKD$FO"159ZHwVfrj9H7^9#?/N EXISTS RtH1MK"3NHqNRtbjXQtr^sG$^9#
SELECT EMPNOFROM DSN861A.EMP XWHERE EXISTS (SELECT L FROM DSN861A.EMP
WHERE X.WORKDEPT=WORKDEPT AND SALARY
Rt
IN Rt
expression IN (subselect) NOT ,
| ( % expression )
IN RtO"1 DNMr 1 HNMHfS7^9#
{*rA0GO"{*rO 1 DNkLsrXj9kbNGJ1lPJj^;s#^?"LkMG"k+]+KX8J/"Mr$/DGba93H,G-^9#IN RtO"JHwNTKD$FO?G9#
WORKDEPT IN ('D11', 'BA1', 'CA1')
c 2: !NRtO"tg E11 G/$F$k>HwNTKD$FO?G9#
EMPNO IN (SELECT EMPNO FROM DSN861A.EMPWHERE WORKDEPT = 'E11')
| c 3: J
Rt
| YEAR(PRENDATE) IN (YEAR(CURRENT DATE),| YEAR(CURRENT DATE + 1 YEAR),| YEAR(CURRENT DATE + 2 YEARS))
c 4: !NcO"DSN8610.EMP Nf+i">HwVf(EMPNO) ,JA9k?aKQ?
Rt
| YF0iU#C/&9Hjs0G"k+""k$O9YF 2 J9Hjs0GJ1lPJj^| ;s#IN0b"Cl?$Wr8.9k3HOG-^;s,"Cl?$Wr=N=
Rt
Q?
Rt
| e-N$:l+r"k7?0
ESCAPE 8a*hS escape-expression NHQK"?CFO"J
Rt
c 3: J
Rt
c 7 !N=K*$F"COL1 ,.g ASCII G
!wro
!wro
!wro GO"Xj5l?T^?O0klNRtKXj7?@}i;RJAND"OR"NOTKr,Q9k3HKhCF@il^9# @}i;RrXj7J1lP"!wroNkLO"Xj
7?QtNkLHJj^9#
AND H OR NjAO"!N=NH*jG9#3N=K*$F"P H Q O$UNRtr=7^9#
NOTJ?KO6"NOTJ6KO?"^? NOTJT@KOT@G9#
gLbN!wro,hK>A5l^9#>ANgxrgLGXj7F$J$lg"NOT ,AND N0K,Q5l"AND , OR N0K,Q5l^9# 18gxlYkNi;R,>A5lkgxO"!wroNG,=,G-kh&K$jAHJCF$^9#
c 1: J:SS AND COMM>:CC OR BONUS>:BBSALARY>:SS AND (COMM>:CC OR BONUS>:BB)
= 21. AND *hS OR N?}M=
P Q P AND Q P OR Q
? ? ? ?
? 6 6 ?
? T@ T@ ?
6 ? 6 ?
6 6 6 6
6 T@ 6 T@
T@ ? T@ ?
T@ 6 6 T@
T@ T@ T@ T@
h3O @lWG 159
SQL KFA9k*W7gs
c 2: J:SS AND COMM>:CCNOT (SALARY>:SS AND COMM>:CC)
c 3: !N!wroGO"AND ,hK,Q5l^9#AND ,,Q5l?e"OR ,,Q5l^9#3N 2 DN OR OIAirhK,Q7FbkL,Qok3HO"j^;s#7?,CF"DB2 O OR r,Q9kgxr*V3H,G-^9#
SALARY>:SS AND COMM>:CC OR BONUS>:BB OR SEX=:GG
SQL KFA9k*W7gsCjN DB2 Wj3sQ$i
SQL KFA9k*W7gs
= 22 (2/3). SQL 9F
SQL KFA9k*W7gs
= 22 (3/3). SQL 9F
SQL KFA9k*W7gs
BT"P$sI"jA"^?OFSP7NF0nrXj9k DYNAMICRULES P$sI&*W7gsMNj9HKD$FO"60Z
SQL KFA9k*W7gs
IN8.K*$Fb",%8zH7FH*&H9k3s^NemKO9Z
SQL KFA9k*W7gs
| - DYNAMICRULES NBT0n,,Q5lklg"9Hjs0hZj8zHH| %8zO"9F
SQL KFA9k*W7gs
| HQ5l^9# USE FOR DYNAMICRULES , NO G"klgKO"Wj3sQ$| i
SQL KFA9k*W7gs
[9HQtNk@: [9HQtk@O"9YF BEGIN DECLARE SECTION 9F}KK[9HQtrk@7J1lPJj^;s# SQLCODE OUko
SQL KFA9k*W7gs
E* SQL 9F&,W,"j^9#
2 DNO$UsO18TNeKJ1lPJj^;s#
9Z
= 23 (2/2). NOFOR Wj3sQ$i[-1hbKn.7J1lPJj^;s#=lO"DB2 Wj3sQ$i[-1hr}C5;kD=-,"j^9# ?
@7"DBRM 4Nr>[-1bKn.9k3HG"DBRM i$Vij< KX9kBT-NdjOKB5l^9#
DBRM r"DB2 Wj3sQ$i
170 DB2 UDB 5
H_~_Xt
h4O H_~_Xt
| H_~_Xt O DB2 (OS/390 G) KhCFs!5lkXtG9#H_~_XtO"Xt>| NeK"gLGO^l? 1 D^?O#tN*ZisI,3$?AG(5l^9#*ZisI| Oz-t HFPl"Fz-tO expression(0) GXj5l^9#H_~_XtNkLO1l| NMKJj^9#3NMO"XtNi;rz-tK,Q9k3HKhCF@il^9#
| H_~_XtO9-9ra9| 205
Copyright IBM Corp. 1982, 1999 171
H_~_Xt
= 24 (2/4). 5] b@ Z
H_~_Xt
= 24 (3/4). 5] b@ Zra9| 245
MONTH z-tNnt,ra9 247
NULLIF z-t,y7$lgKO NULL ra7"y7/J$lgKOGiNz-tra9
248
| POSSTR| GiNz-tNLNz-tbNLVra9| 249
| POWER| GiNz-tr 2 V\Nz-tNMG_h7?Mra9| 251
| QUARTER| z-tKXj7?|UKX9k/NM>|r=9 1 +i 4 NOON0| tra9| 252
| RADIANS| YtG=7?z-tNi8"stra9| 253
| RAISE_ERROR| Xj5l? SQLSTATE H(i
sXt
= 24 (4/4). 5] b@ ZlNs>O180k
sXt
| COUNT *hS COUNT_BIG XtNkLO"LkMKOJj^;s#AVG"MAX"| MIN"STDDEV"SUM"*hS VARIANCE NrbGRYkh&K"Xt,uN;CHK| ,Q5l?lg"kLOLkMHJj^9#?@7"Xt,0t*rj9HGXj5l"z| -t,;Q0KhCF?(il"0N>AKhCF;Qc0J
AVG
AVG
ALL AVG( expression) DISTINCT
| 9-
COUNT
COUNT
COUNT( DISTINCTexpression ) L
| 9-
COUNT_BIG
| COUNT_BIG
|
| COUNT_BIG( | DISTINCTexpression ) | L
| 9-
COUNT_BIG
| COUNT(*) H18zLr@kKO"Qia
MAX
MAX
ALL MAX( expression) DISTINCT
| 9-
MIN
MIN
ALL MIN( expression) DISTINCT
| 9-
STDDEV
| STDDEV
|
| ALL| STDDEV( expression) | DISTINCT
| 9-
SUM
SUM
ALL SUM( expression) DISTINCT
| 9-
VARIANCE ^?O VAR
| VARIANCE ^?O VAR
|
| ALL| VARIANCE ( expression) | VAR DISTINCT
| 9-
9+iHwVf">z"*hS/prWa7^9#/praakKO"9+iHw,tg D11 K$k DSN8610.EMP NFTK*$F"
SELECT EMPNO, LASTNAME, YEAR(CURRENT DATE - BIRTHDATE) FROM DSN861A.EMP
WHERE WORKDEPT = 'D11';
J
ABS
| ABS ^?O ABSVAL
|
| ABS| (expression) | ABSVAL
| 9-
ACOS
| ACOS
|
| ACOS(expression)
| 9-9ra7^9#ACOS H COS| XtOUNi;rT$^9#
| z-tO"M, -1 A 1 NOOK"j"$:l+NH_~_tMG
ASIN
| ASIN
|
| ASIN(expression)
| 9-
ATAN
| ATAN
|
| ATAN(expression)
| 9-
ATANH
| ATANH
|
| ATANH(expression)
| 9-
ATAN2
| ATAN2
|
| ATAN2(expression1,expression2)
| 9-l"x H y B8rXj7^9#
| Fz-tO"$:l+NH_~_tMG
BLOB
| BLOB
|
| BLOB(expression ) | | ,integer
| 9-
CEIL ^?O CEILING
| CEIL ^?O CEILING
|
| CEIL| (expression) | CEILING
| 9-
CHAR
CHAR
|U~o+i8z
CHAR(datetime-expression ) , ISO USA EUR JIS LOCAL
| 8z+i8z|
| CHAR(character-expression ) | | ,integer
| 0t+i8z|
| CHAR(integer-expression)
10 Jt+i8z CHAR(decimal-expression ) ,decimal-character
| b0.t@t+i8z|
| CHAR(floating-point-expression)
| T ID +i8z| | CHAR(row-ID-expression)
| 9-
CHAR
|U~o+i8z
datetime-expressionJ
CHAR
| OZjNFil^9#ZjNFil?9YFN8z,Vis/NlgJ0O"Yp,a5l| ^9#
| character-expression ,u9Hjs0Nlg"(i
CHAR
| floating-point-expression| M,b0.t@G
CHAR
c 4: 5sWk= DSN8610.EMP KX7F"!N SQL 9FHwN?Qk?N8z9Hjs0==K_j7^9#
EXEC SQL SELECT CHAR(AVG(SALARY)) INTO :AVERAGE FROM DSN861A.EMP;
DEC31 rH&H"AVG r 10 JtK,Q7?kLO:Y, 31 eN 10 JtKJj^9#3Nh&Kg-J 10 JtrjAG-k[9H@lO";sViHwKX7F"[Q|UHk?r=(7^9#k?N.t| @8zH7F3s^rHQ7^9 (18357,50)#
| SELECT HIREDATE, CHAR(SALARY, ',')| FROM DSN861A.EMP| WHERE SALARY = 18357.5A;
| k?O9Hjs0M '00018357,50' H7F=(5l^9#
| c 8: c 7 N7Jj*r+jV7^9,"20000.25 +i SALARY sNMr:;7"k?r| J,~N.t@8zrHQ7F=(7^9#
| SELECT HIREDATE, CHAR (2AAAA.25 - SALARY)| FROM DSN861A.EMP| WHERE SALARY = 18357.5A;
| k?O9Hjs0M '0001642.75' H7F=(5l^9#
| c 9: [9HQt SEASONS_TICKETS , INTEGER H7FjA5l"M, 10000 G"k| H7^9#DECIMAL XtH CHAR XtrHQ7F"Mr8z9Hjs0 '10000.00' K| Q97^9#
| SELECT CHAR(DECIMAL(:SEASONS_TICKETS,7,2))| FROM SYSIBM.SYSDUMMY1;
198 DB2 UDB 5
CHAR
| c 10: = T1 bNs COL1 H COL2 ,>}Hb REAL H7FjA5l"T1 K 2 DNsN| M, 7.1E+1 H 7.2E+2 G"k1lNT,^^lF$kH7^9#2 DNsrIC7F"k| Lr8z9Hjs0H7F=7^9#
| SELECT CHAR(COL1 + COL2)| FROM T1;
| kLO8zM '1.43E2 ' KJj^9#
h4O H_~_Xt 199
CLOB
| CLOB
|
| CLOB(expression ) | | ,integer
| 9-
COALESCE
COALESCE
COALESCE (expression % ,expression ) VALUE
| 9-
COALESCE
c 3: 1993 /*hS 1994 /KX7F"FtgNder-?7?=,"kH7^9#S1993H S1994 NF=O"DEPTNO sH SALES sG=.5lF$^9#=NIAibLkMH9k3HOG-^;s# J}N/Ktg,8_7F$?+I&+K++oi
:"kLK9YFNtgr^ak3H,G-kh&KJj^9# COALESCE XtKhCF"2 DNkgsr 1 DNsKkg9k3H,G-^9#=Nh&K9kH"kLrgVKBYk3H,G-^9#
202 DB2 UDB 5
CONCAT
| CONCAT
|
| CONCAT (expression1,expression2) | "||"(1)
| m:| 1 D~ (||) O"-zJ SQL H%8z (" ^?O ') KhCFO`,W,"j^9#
| 9-
COS
| COS
|
| COS(expression)
| 9-9ra7^9#COS H ACOS Xt| OUNi;rT$^9#
| z-tO"$:l+NH_~_tMG
COSH
| COSH
|
| COSH(expression)
| 9-9ra7^9#
| z-tO"$:l+NH_~_tMG
DATE
DATE
DATE(expression)
| 9-
DATE
3lO"1989 / 3 n 2 |Nbt==ra7^9#
h4O H_~_Xt 207
DAY
DAY
DAY(expression)
| 9-N,'O"z-tNG
DAYOFMONTH
| DAYOFMONTH
|
| DAYOFMONTH(expression)
| 9-HwVf 140 NM,[| Q5l?nN|K;CH7^9#
| SELECT DAYOFMONTH(HIREDATE)| INTO :DAYVAR| FROM DSN861A.EMP| WHERE EMPNO = 'AAA14A';
h4O H_~_Xt 209
DAYOFWEEK
| DAYOFWEEK
|
| DAYOFWEEK(expression)
| 9-
DAYOFYEAR
| DAYOFYEAR
|
| DAYOFYEAR(expression)
| 9-
DAYS
DAYS
DAYS(expression)
| 9-
DBCLOB
| DBCLOB
|
| DBCLOB(expression ) | | ,integer
| 9-
DECIMAL ^?O DEC
DECIMAL ^?O DEC
DECIMAL ( numeric-expression ) | DEC string-expression ,integer1
,integer2
| 9-
DECIMAL ^?O DEC
c: DSN8610.EMP NfN>HwN?Qk?r" 8 eN 10 Jt(3N&A 2 er.t@N&&K9k)H7F=7^9#
SELECT DECIMAL(AVG(SALARY),8,2) FROM DSN861A.EMP;
h4O H_~_Xt 215
DEGREES
| DEGREES
|
| DEGREES(expression)
| 9-
DIGITS
DIGITS
DIGITS(expression)
| 9-
DOUBLE ^?O DOUBLE_PRECISION
| DOUBLE ^?O DOUBLE_PRECISION
|
| DOUBLE ( numeric-expression ) | DOUBLE_PRECISION string-expression| FLOAT
| 9-
EXP
| EXP
|
| EXP(expression)
| 9-
FLOAT
FLOAT
FLOAT(expression)
| 9-
FLOOR
| FLOOR
|
| FLOOR(expression)
| 9-
GRAPHIC
| GRAPHIC
| 8z+i0iU#C/|
| GRAPHIC(character-expression ) | | ,integer
| 0iU#C/+i0iU#C/|
| GRAPHIC(graphic-expression ) | | ,integer
| 9-
GRAPHIC
| character-expression NF8zKhCF"kLN8z,h^j^9#kL,3-P5lk0| K"z-tOM$F#VA0N.gG
HEX
HEX
HEX(expression)
| 9-
HOUR
HOUR
HOUR(expression)
| 9-N,'O"z-tNG
IFNULL
| IFNULL
|
| IFNULL(expression,expression)
| 9-HwVfHk?r*r7^9#| k?,gn7F$k (LkG"k) lgKO"M 0 ra7^9#
| SELECT EMPNO, IFNULL(SALARY,A)| FROM DSN861A.EMP;
226 DB2 UDB 5
INSERT
| INSERT
|
| INSERT(expression1,expression2,expression3,expression4)
| 9-}N0,0iU#C/&9Hjs0GJ1lPJj^;| s# 0,8z9Hjs0G"klg"INz-tb CLOB G"CFOJj^;s# 0,0| iU#C/&9Hjs0G"klg"INz-tb DBCLOB G"CFOJj^;s#
| XtNkLO"GiH 4 V\Nz-tNG
INSERT
| L4 O expression4 N950-G9#
| =lJ0Nlg"kLN950-O"expression1 N950-K expression4 N950-| rC(?bNKJj^9#3Nlg"expression1 N950-K expression4 N950-| rC(?MO"VARCHAR NkLKD$FO 4000 r"VARGRAPHIC NkLKD$| FO 2000 r6(FOJj^;s#
| kLNB]N95OJ
INSERT
| c 2: 0NcO"F-9HNfVK>NF-9Hr^~9k}!r(7^7?#3NcO"+| O@ ( expression2) H7F 1 rHQ7F"F-9HN0K>NF-9Hr^~9k}!r(| 7F$^9#
| SELECT CHAR(INSERT('INSERTING',1,A,'XX'),1A),| CHAR(INSERT('INSERTING',1,1,'XX'),1A),| CHAR(INSERT('INSERTING',1,2,'XX'),1A),| CHAR(INSERT('INSERTING',1,3,'XX'),1A)| FROM SYSIBM.SYSDUMMY1;
| 3NcO"'XXINSERTIN'"'XXNSERTING'"'XXSERTING '"*hS| 'XXERTING ' ra7^9#
| c 3: J
INTEGER ^?O INT
| INTEGER ^?O INT
|
| INTEGER ( numeric-expression ) | INT string-expression
| 9-
JULIAN_DAY
| JULIAN_DAY
|
| JULIAN_DAY(expression)
| 9-
LCASE ^?O LOWER
| LCASE ^?O LOWER
|
| LCASE (expression) | LOWER
| 9-
LEFT
| LEFT
|
| LEFT(string,integer)
| 9-
LEFT
| XtN$:l+Nz-t,LkG"kD=-,"klg"kLbLkKJkD=-,"j^| 9#$:l+Nz-t,LkG"lP"kLOLkMHJj^9#
| c 1: [9HQt ALPHA NM, 'ABCDEF' G"kH7^9#JHwNU!
LENGTH
LENGTH
LENGTH(expression)
| 9-
LN
| LN
|
| LN(expression)
| 9-
LOCATE
| LOCATE
|
| LOCATE(search-string,source-string ) | | ,start
| 9-
LOCATE
| 3NXtNkLOg0tG9# $:l+Nz-t,LkG"kD=-,"klg"kLbL| kKJkD=-,"j^9#$:l+Nz-t,LkG"lP"kLOLkMHJj^9#
| LOCATE N\YKD$FO"249Z0N=bN9YFNTKD$F"RECEIVED sH SUBJECT s| r*r7"NOTE_TEXT sbN9Hjs0 'GOOD' N+OLVr*r7^9#
| SELECT RECEIVED, SUBJECT, LOCATE('GOOD', NOTE_TEXT)| FROM IN_TRAY| WHERE LOCATE('GOOD', NOTE_TEXT) A;
238 DB2 UDB 5
LOG
| LOG
|
| LOG (expression) | LN
| 9-
LOG10
| LOG10
|
| LOG1A(expression)
| 9-
LTRIM
| LTRIM
|
| LTRIM(expression)
| 9-
MICROSECOND
MICROSECOND
MICROSECOND(expression)
| 9-N,'O"z-tNG
MIDNIGHT_SECONDS
| MIDNIGHT_SECONDS
|
| MIDNIGHT_SECONDS(expression)
| 9-
MINUTE
MINUTE
MINUTE(expression)
| 9-N,'O"z-tNG
MOD
| MOD
|
| MOD(expression,expression)
| 9-ra7^9#
| j>rW;9k?aKHQ5lkx0O!NH*jG9#
| MOD(x,y) = x - (x/y) L y
| 33G x/y O|;NkLr0tKZjNF?MG9#
| z-tO"$:l+NH_~_tMG
MOD
| J
MONTH
MONTH
MONTH(expression)
| 9-N,'O"z-tNG
NULLIF
NULLIF
NULLIF(expression,expression)
| 9-
POSSTR
| POSSTR
|
| POSSTR(source-string,search-string)
| 9-
POSSTR
| ASCII G
POWER
| POWER
|
| POWER(expression1,expression2)
| 9-
QUARTER
| QUARTER
|
| QUARTER(expression)
| 9-|r(9 1 +i 4 NOON0tra7^9#| ?H(P"3NXtO"1 n"2 n"3 nN|UKX7FO 1 ra7^9#
| z-tO"|U"?$`&9?sW""k$O|U^?O?$`&9?sWN-zJ8z9| Hjs0==GJ1lPJj^;s#8z9Hjs0==O CLOB G"CFOJj^;s#| ^?"B]N95O 255 P$HJ|K"kNG"3 ra7^9#
| SELECT QUARTER('1996-A8-25')| FROM SYSIBM.SYSDUMMY1
| c 2: 5sWk= DSN8610.PROJ rHQ7F"0t[9HQt QUART r"Wm8'/H| 'AD3111' Nh0Vf 70 ,Tol?/NM>|K_j7^9#h00;|UOs| ACENDATE K-?5lF$^9#
| SELECT QUARTER(ACENDATE)| INTO :QUART| FROM DSN861A.PROJ| WHERE PROJNO = 'AD3111' AND ACTNO = 7A;
| QUART O 4 K_j5l^9#
252 DB2 UDB 5
RADIANS
| RADIANS
|
| RADIANS(expression)
| 9-
RAISE_ERROR
| RAISE_ERROR
|
| RAISE_ERROR(sqlstate,diagnostic-string)
| 9-
RAISE_ERROR
| SELECT EMPNO,| CASE WHEN EDLEVEL < 16 THEN 'Diploma'| WHEN EDLEVEL < 18 THEN 'Graduate'| WHEN EDLEVEL < 21 THEN 'Post Graduate'| ELSE RAISE_ERROR('7AAA1',| 'EDUCLVL has a value greater than 2A')| END| FROM DSN861A.EMP;
h4O H_~_Xt 255
RAND
| RAND
|
| RAND( ) | expression
| 9-
REAL
| REAL
|
| REAL( numeric-expression ) | string-expression
| 9-
REPEAT
| REPEAT
|
| REPEAT(expression,integer)
| 9-
REPEAT
| c 1: 'abc' r 2 s+jV7F"'abcabc' rn.7^9#
| SELECT REPEAT('abc',2)| FROM SYSIBM.SYSDUMMY1;
| c 2: 'REPEAT THIS' H$&gr 5 sj9H7^9#CHAR XtrHQ7F"POr 60| P$HK)B7^9#
| SELECT CHAR(REPEAT('REPEAT THIS',5), 6A)| FROM SYSIBM.SYSDUMMY1;
| 3NcNkLO"'REPEAT THISREPEAT THISREPEAT THISREPEAT THISREPEAT| THIS ' G9#
| c 3: J
REPLACE
| REPLACE
|
| REPLACE(expression1,expression2,expression3)
| 9-
REPLACE
| $:l+Nz-t,LkG"kD=-,"klg"kLbLkKJkD=-,"j^9#$| :l+Nz-t,LkG"lP"kLOLkMHJj^9#
| kLN5V?$WH CCSID OJ
RIGHT
| RIGHT
|
| RIGHT(string,integer)
| 9-
RIGHT
| XtN$:l+Nz-t,LkG"kD=-,"klg"kLbLkKJkD=-,"j^| 9#$:l+Nz-t,LkG"lP"kLOLkMHJj^9#
| c 1: [9HQt ALPHA NM, 'ABCDEF' G"kH7^9#J
ROUND
| ROUND
|
| ROUND(expression1,expression2)
| 9-
ROUND
| 3NcOM 4.0"3.0"-3.0"*hS -4.0 ra7^9#(5NM 3.5 GO"5 ,!Nb$tMK| ]ail"iNM -3.5 GO"5 ,!Nc$iNtMK]ailF$k3HKmU7F/@5| $#)
h4O H_~_Xt 265
ROWID
| ROWID
|
| ROWID(expression)
| 9-
RTRIM
| RTRIM
|
| RTRIM(expression)
| 9-
SECOND
SECOND
SECOND(expression)
| 9-N,'O"z-tNG
SIGN
| SIGN
|
| SIGN(expression)
| 9-
SIN
| SIN
|
| SIN(expression)
| 9-
SINH
| SINH
|
| SINH(expression)
| 9-
SMALLINT
| SMALLINT
|
| SMALLINT( numeric-expression ) | string-expression
| 9-
SPACE
| SPACE
|
| SPACE(expression)
| 9-
SQRT
| SQRT
|
| SQRT(expression1)
| 9-
STRIP
STRIP
STRIP(expression ) ,BOTH ,B ,strip-character ,LEADING ,L ,TRAILING ,T
| 9-&N$:l+iG"k+r(7^9#2 V\Nz-trXj7J$lgO"9Hjs0Nh,HvxN>&GVis/,o|5l^9#
3 V\Nz-tO"o|5lk SBCS 8z^?O DBCS 8zr(91lN8zjtG9#GiNz-t, DBCS 0iU#C/&9Hjs0^?O DBCS lQ9Hjs0NlgO"3 V\Nz-tO1lN DBCS 8zr^`0iU#C/jtGJ1lPJj^;s#G