0% found this document useful (0 votes)
165 views

DB2 Commands SQL - Important Queries

The document contains DB2 commands and SQL queries for various tasks like: - Getting current locks on a table - Calculating max values from a table - Getting the day of the week from a date - Comparing columns from different tables - Concatenating columns - Getting primary keys of a table
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as DOC, PDF, TXT or read online on Scribd
0% found this document useful (0 votes)
165 views

DB2 Commands SQL - Important Queries

The document contains DB2 commands and SQL queries for various tasks like: - Getting current locks on a table - Calculating max values from a table - Getting the day of the week from a date - Comparing columns from different tables - Concatenating columns - Getting primary keys of a table
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as DOC, PDF, TXT or read online on Scribd
You are on page 1/ 9

DB2 commands: DB2 Run Command to diplay Current Locks on a Table: -DIS DB(ARLACRSP) SPACENAM(SCRSCASE) USE LOCKS Query

to Calculate the Max Value:

-- FIRST MAX -- ========== SELECT MAX(REFERRAL_AM) FROM TRCVRY_RFRL_SYMBOL ; -- SECOND MAX -- ========== SELECT MAX(REFERRAL_AM) FROM TRCVRY_RFRL_SYMBOL WHERE REFERRAL_AM < (SELECT MAX(REFERRAL_AM) FROM TRCVRY_RFRL_SYMBOL) ; -- N'TH MAX WITHOUT DUPLICATES -- =========================== SELECT REFERRAL_AM FROM TRCVRY_RFRL_SYMBOL A WHERE = ( SELECT COUNT(!) FROM TRCVRY_RFRL_SYMBOL B WHERE B"REFERRAL_AM #= A"REFERRAL_AM ) ; -- N'TH MAX WITH DUPLICATES -- ======================== SELECT DISTINCT REFERRAL_AM FROM TRCVRY_RFRL_SYMBOL A WHERE = ( SELECT COUNT(DISTINCT B"REFERRAL_AM) FROM TRCVRY_RFRL_SYMBOL B WHERE B"REFERRAL_AM #= A"REFERRAL_AM) ; To calculate day o !eek:

SELECT DAYS(DATE($WS-S%L-DT ))-(DAYS(DATE($WS-S%L-DT ))&') ! ' INTO $WS-DAY-OF-WEEK FROM SYSIBM"SYSDUMMY IF WS-DAY-OF-WEEK IS ( - SUNDAY - MONDAY ) - TUESDAY

* + , "ddition o days

WEDNESDAY THURSDAY FRIDAY SATURDAY

SELECT DATE($WS-S%L-DT ) . * DAY INTO $WS-S%L-DT) FROM SYSIBM"SYSDUMMY To #et current timestamp SET $WS-CURRENT-TIMESTAMP To #et current date SET $WS-CURRENT-DATE $sa#e o Value Clause = CURRENT DATE = CURRENT TIMESTAMP

SELECT VALUE(MAX(IPL_UPDATE_TS)/ CURRENT TIMESTAMP) INTO $PROD-IPL-UPDATE-TS FROM VCLMS_PROD WHERE POL_NO = $PROD-POL-NO AND MODULE = $PROD-MODULE AND ANN_STMT_CO = $PROD-ANN-STMT-CO To compare C%"R and &'T()(R POL"DPO_POL_NO / CKY"MA0OR_CLASS_CD $WS-POLICY-NUMBER / $WS-MA0OR-CLASS-CODE CRS_DED_POLICY POL / VCOV1_KEY CKY CKY"POL_NO = INTE1ER(DECIMAL(POL"DPO_POL_NO))

SELECT INTO FROM WHERE

H232 DPO_POL_NO 45 CHAR( ,) 678 POL_NO 45 INTE1ER" To concatenate t!o Columns

SELECT STF_FIRST_NAME 99 STF_LAST_NAME INTO $WS-USER-NM FROM CRS_STAFF WHERE STF_CODE = $WS-I-USER-ID

To )et the *rimary +eys

or the #i,en table name

SELECT FROM WHERE AND AND

NAME SYSIBM"SYSCOLUMNS TBCREATOR = <TABLE CREATOR NAME# TBNAME = <TABLE NAME# KEYSE% # ( (OR)

SELECT A"COLNAME/ A"COLSE%/ A"ORDERIN1/ FROM SYSIBM"SYSKEYS A/ SYSIBM"SYSINDEXES B WHERE AND AND AND AND AND A"IXNAME = B"NAME A"IXCREATOR = B"CREATOR A"IXCREATOR = B"TBCREATOR B"TBNAME = <TAB NAME# B"TBCREATOR = <TAB CREATOR# B"UNI%UERULE = :P; a table

To #et $ni-ue index o A"COLNAME /A"COLSE% /A"ORDERIN1 /A"IXNAME /B"COLCOUNT /B"CREATEDTS /B"ALTEREDTS /B"UNI%UERULE

SELECT

FROM SYSIBM"SYSKEYS A/ SYSIBM"SYSINDEXES B WHERE AND AND AND AND AND A"IXNAME = B"NAME A"IXCREATOR = B"CREATOR A"IXCREATOR = B"TBCREATOR B"TBNAME = <TAB NAME# B"TBCREATOR = <TAB CREATOR# B"UNI%UERULE = 'U' B"ALTEREDTS DESC / A"COLSE%

ORDER BY

./.&BM0./.&'D(1(. NAME CREATOR TBNAME < I782= 76>2 < I782= C326?@3 < T6AB2 76>2

TBCREATOR UNI%UERULE

< = = =

T6AB2 C326?@3 P < F@3 P34>63C K2C5 U < F@3 U74DE2 I782=25 D < F@3 DEFB4G6?2 I782=25

COLCOUNT INDEXTYPE CREATEDTS ALTEREDTS

< N@ @H C@BE>75 H@3 ?I6? I782= - TCF2 @H I782= ( - C326?28 TS - AB?2328 TS @3 ))

./.&BM0./.+(/. IXNAME IXCREATOR COLNAME COLSE% ORDERIN1 I782= 76>2 I782= G326?@3 C@BE>7 76>2 C@BE>7 S2DE27G2 47 I782= O3823 @H I782= ected pro#ram names because o a table

To )et the a

SELECT 1RANTEE JPRO1RAMJ/ TTNAME JTABLE NAMEJ/ SELECTAUTH JSELECTJ/ INSERTAUTH JINSERTJ/ UPDATEAUTH JUPDATEJ/ DELETEAUTH JDELETEJ FROM SYSIBM"SYSTABAUTH WHERE 1RANTEETYPE= 'P' AND TCREATOR= <TABLE CREATOR NAME# AND TTNAME = <TABLE NAME# ORDER BY PRO1RAM To )et Table or Vie! or "lias Details NAME JT6AB2 @3 AB465 @3 V42KJ /TYPE /CREATOR /COLCOUNT /TBCREATOR /TBNAME /KEYCOLUMNS /CREATEDTS /ALTEREDTS /CREATEDBY

SELECT

FROM SYSIBM"SYSTABLES WHERE NAME = <TABLE @3 V42K @3 AB465 N6>2# AND CREATOR = < TABLE @3 V42K @3 AB465 C326?@3# TYPE = T (T6AB2) @3 A (AB465) V (V42K) 1 (T2>F@363C T6AB2) COLCOUNT < NO OF COLUMNS - @7BC H@3 T6AB25 AND V42K5 (( H@3 AB465)

RECLEN1TH < R2G@38 B27L?I < @7BC H@3 T6AB25 (( H@3 AB465 678 V42K5) TBCREATOR < @7BC FOR ALIAS < ACTUAL TABLE CREATOR TBNAME < @7BC FOR ALIAS < ACTUAL TABLE NAME KEYCOLUMNS < N@ @H P34>63C K2C5 To )et Vie! De inition

SELECT

NAME /CREATOR /SE%NO /TEXT FROM SYSIBM"SYSVIEWS WHERE NAME = <VIEW NAME#

SE%NO < IF THE VIEW DEFINITION IS MORE THAN ONE LINE TEXT - VIEW DEFINITION To )et &ma#e copied table names A"NAME /A"CREATOR /A"TSNAME SYSIBM"SYSTABLES A A"CREATOR = <?6AB2 G326?@3# A"TYPE = 'T' A"DBNAME = <D6?6A652 76>2# EXISTS ( SELECT 'X' FROM SYSIBM"SYSCOPY B WHERE A"TSNAME = B"TSNAME AND A"DBNAME = B"DBNAME )

SELECT FROM WHERE AND AND AND

To )et the *lan names !hich are )rant to *$BL&C or some $ser

SELECT DISTINCT A"NAME /B"SCREATOR /B"STNAME /B"DELETEAUTH /B"INSERTAUTH /B"SELECTAUTH /B"UPDATEAUTH /A"BINDAUTH /A"EXECUTEAUTH FROM WHERE AND AND SYSIBM"SYSPLANAUTH A /SYSIBM"SYSTABAUTH B A"1RANTOR = <1367?@3 76>2# A"1RANTEE = 'PUBLIC' @3 <U523 48# A"NAME = B"1RANTEE

AND OR OR

((B"UPDATEAUTH NOT IN (' ')) (B"INSERTAUTH NOT IN (' ')) (B"DELETEAUTH NOT IN (' ')))

UPDATEAUTH = :Y; < TI2 1367?22 G67 8@ UPDATE @7BC UPDATEAUTH = :1; < TI2 1367?22 G67 L4M2 1367? P23>4554@7 H@3 UPDATE To )et Column details A"NAME /A"CREATOR /A"TYPE /A"TBCREATOR /A"TBNAME /B"NAME /B"COLTYPE /B"LEN1TH /B"SCALE SYSIBM"SYSTABLES A /SYSIBM"SYSCOLUMNS B = 'ARLACRSA' = B"TBCREATOR = B"TBNAME LIKE :NBRN; or all the tables

SELECT

FROM

WHERE A"CREATOR AND A"CREATOR AND A"NAME AND B"NAME WITH UR To )et List o DISTINCT TCREATOR /TTNAME /ALTERAUTH /DELETEAUTH /INDEXAUTH /INSERTAUTH /SELECTAUTH /UPDATEAUTH

tables *ri,ile#es #ranted to an "uth id

SELECT

FROM SYSIBM"SYSTABAUTH WHERE 1RANTEE IN (<E523 48#/'PUBLIC'/ 'PUBLIC!') AND 1RANTEETYPE = ' ' To )et the a BNAME /BCREATOR /BTYPE /DNAME ected *lan names i an &ndex is Dropped

SELECT

FROM SYSIBM"SYSPLANDEP WHERE BTYPE = :I; AND BNAME = <I782= 76>2 ?@ A2 D3@FF28# SYSIBM"SYSPLANDEP TI45 ?6AB2 32G@385 ?I2 82F27827G425 @H FB675 @7 ?6AB25/ M42K5/ 6B46525/ 5C7@7C>5/ ?6AB2 5F6G25/ 4782=25/ HE7G?4@75/ 678 5?@328 F3@G28E325" BNAME BCREATOR BTYPE - TI2 76>2 @H 67 @AO2G? ?I2 FB67 82F2785 @7" - IH BNAME 45 6 ?6AB2 5F6G2/ 4?5 86?6A652" O?I23K452/ ?I2 6E?I@34P6?4@7 ID @H ?I2 @K723 @H BNAME" - TCF2 @H @AO2G? 4827?4H428 AC BNAME$ A F I O P R S T V DNAME AB465 U523-82H4728 HE7G?4@7 @3 G65? HE7G?4@7 I782= S?@328 F3@G28E32 P63?4?4@728 ?6AB2 5F6G2 T6AB2 5F6G2 SC7@7C> T6AB2 V42K

- N6>2 @H ?I2 FB67" ected *acka#e names i an &ndex is Dropped

To )et the a

SELECT

BNAME /B%UALIFIER /BTYPE /DLOCATION /DCOLLID /DNAME /DCONTOKEN /DOWNER /DTYPE

FROM SYSIBM"SYSPACKDEP WHERE BTYPE = :I; AND BNAME = <PB67 76>2# SYSIBM"SYSPACKDEP TI45 ?6AB2 32G@385 ?I2 82F27827G425 @H F6GQ6L25 @7 ?6AB25/ M42K5/ 6B46525/ 5C7@7C>5/ ?6AB2 5F6G25/ 4782=25/ HE7G?4@75/ 678 5?@328 F3@G28E325"

BNAME

- TI2 76>2 @H 67 @AO2G? ?I6? 6 F6GQ6L2 82F2785 @7"

B%UALIFIER - IH BNAME 4827?4H425 6 ?6AB25F6G2/ ?I2 76>2 @H 4?5 86?6A652" O?I23K452/ ?I2 6E?I@34P6?4@7 ID @H ?I2 @K723 @H BNAME" BTYPE - TCF2 @H @AO2G? 4827?4H428 AC BNAME 678 B%UALIFIER$ A F I O P R S T V BCREATOR DLOCATION DCOLLID DNAME DCONTOKEN AB465 U523-82H4728 HE7G?4@7 @3 G65? HE7G?4@7 I782= S?@328 F3@G28E32 P63?4?4@728 ?6AB2 5F6G2 T6AB2 5F6G2 SC7@7C> T6AB2 V42K

- IH BNAME 45 6 ?6AB2 5F6G2/ 4?5 86?6A652" O?I23K452/ ?I2 6E?I@34P6?4@7 ID @H ?I2 @K723 @H BNAME" - ABK6C5 G@7?6475 AB67Q5 - N6>2 @H ?I2 F6GQ6L2 G@BB2G?4@7" - N6>2 @H ?I2 F6GQ6L2"

- C@7545?27GC ?@Q27 H@3 ?I2 F6GQ6L2" TI45 45 24?I23$ ! TI2 JB2M2BJ 65 5F2G4H428 AC ?I2 LEVEL @F?4@7 KI27 ?I2 F6GQ6L2'5 F3@L36> K65 F32G@>F4B28 ! TI2 ?4>25?6>F 4784G6?47L KI27 ?I2 F6GQ6L2'5 F3@L36> K65 F32G@>F4B28/ 47 67 47?2376B H@3>6?" - OK723 @H ?I2 F6GQ6L2" T AB67Q - TCF2 @H F6GQ6L2$ T34LL23 F6GQ6L2 N@? 6 ?34LL23 F6GQ6L2 erence Bet!een Timestamps

DOWNER DTYPE

Calculate the Di

PROBLEM$ Y@E 7228 ?@ G@>FE?2 ?I2 84HH2327G2/ 47 7E>A23 @H 52G@785/ A2?K227 ?I2 5F2G4H428 ?4>25?6>F5 TS (5?63? ?4>2) 678 TS) (278 ?4>2)" SOLUTION$ TI2 S%L 5?6?2>27? I65 ?K@ F63?5" ! I7 ?I2 H435? F63?/ C@E 5EA?36G? ?I2 5?63? ?4>2 H3@> ?I2 278 ?4>2/ 8234M47L ?I2 7E>A23 @H 86C5 A2?K227 ?I2 ?4>25?6>F5" Y@E ?I27 >EB?4FBC ?I2 7E>A23 @H 86C5 AC R-+((/ ?I2 52G@785 47 6 86C/ ?@ G@7M23? ?I2 86C5 ?@ ?I2 7E>A23 @H 52G@785" SELECT (DAYS (TS)) - DAYS (TS )) ! R-+(( ! I7 ?I2 52G@78 F63?/ C@E 8234M2 ?I2 6884?4@76B ?4>2 (I@E35/ >47E?25/ 678 52G@785/ B45? 47 II>>55 H@3>6?) A2?K227 ?I2 ?4>25?6>F5 678 G@7M23?

?I2 ?4>2 ?@ ?I2 7E>A23 @H 52G@785" F435? C@E 7228 ?@ 2=?36G? 678 G@7M23? ?I2 I@E35 ?@ 52G@785$ SELECT (HOUR (TIME (TS))) - HOURS (TIME TS ))) ! *-(( N2=? C@E 7228 ?@ 2=?36G? 678 G@7M23? ?I2 >47E?25 ?@ 52G@785$ SELECT (MINUTE (TIME (TS))) - MINUTE (TIME (TS ))) ! -( TI27 C@E 2=?36G? ?I2 32>64747L 52G@785$ SELECT SECOND (TIME (TS))) - SECOND (TIME (TS )) L65?BC/ C@E 688 6BB F63?46B 325EB?5 ?@ F3@8EG2 ?I2 84HH2327G2 A2?K227 ?I2 ?K@ ?4>25?6>F5 47 ?@?6B 7E>A23 @H 52G@785" TI2 H@BB@K47L S%L G6BB 2=2GE?25 6BB ?I2 F63?5 ?@L2?I23 47 @72 5?6?2>27? ?@ C42B8 ?I2 H476B 325EB?$ SELECT (((DAYS (TS)) - DAYS (TS )) ! R-+(() . ((HOUR (TIME (TS))) - HOURS (TIME TS ))) ! *-(() . ((MINUTE (TIME (TS))) - MINUTE (TIME (TS ))) ! -() . (SECOND (TIME (TS))) - SECOND (TIME (TS )))) FROM <?6AB2 76>2#; TI45 TIP F3@M4828 AC PB6?47E> TIPS M63GI SS,

You might also like