Professional Documents
Culture Documents
1|Page
SANNIHITHA TECHNOLOGIES - 8885586684
e.g.
SELECT EMPID, NAME, ADDR, CONTACT,
CASE
WHEN SEX = ‘M’ THEN ’MALE’
ELSE ’FEMALE’
END
FROM EMPLOYEE
(b) To find exceptional records:
2|Page
SANNIHITHA TECHNOLOGIES - 8885586684
** Here if ITEM_COUNT=0, then UNIT_PRICE will be zero i.e. it will not give ‘Divide by zero’ error.
Here, we have the Average account balance with 23 decimal places in the output.To change it to 2
decimal places,we use DEC( ) function.
SELECT DEC(AVG(BALANCE),10,2)
FROM AMIT001/ACCOUNT
WHERE PARTY='P100000001'
3|Page
SANNIHITHA TECHNOLOGIES - 8885586684
P500000001 191 5000000001 EUR 9,020.50
P500000001 1 5100000001 EUR 555,555.00
There are different ways, we can join PRIMARY & SECONDARY TABLE
I. INNER JOIN
Non matching records of PRIMARY & SENCONDARY Table will be SKIPPED from the result set.
Only the matching records from both tables comes in the result set.
o There are different ways, we can join PRIMARY & SECONDARY TABLE
I. INNER JOIN
Non matching records of PRIMARY & SENCONDARY Table will be SKIPPED from the result
set. Only the matching records from both tables comes in the result set.
SELECT A.PARTYID, A.NAME, A.PHONE, A.ADDRESS, B.ORG, B.ACCOUNT, B.CURR, B.BALANCE
FROM AMIT001/PARTY A, AMIT001/ACCOUNT B
WHERE A.PARTYID = B.PARTY
Output:
PARTYID NAME PHONE ADDRESS ORG ACCOUNT CURR BALANCE
P100000001 KOSARA 40,442,222 FLAT 101,LANE-22,PVR BUILDING 190 1000000001 USD 6,667.75
P100000001 KOSARA 40,442,222 FLAT 101,LANE-22,PVR BUILDING 191 1100000001 USD 4,444.75
P200000001 HENRY PAL 40,223,122 FLAT 131,LANE-55,PVR BUILDING 190 2000000001 EUR 1,122.05
P300000001 ROBIN 40,334,342 FLAT 333,LANE-66,PVR BUILDING 190 3000000001 EUR 1,002.05
P300000001 ROBIN 40,334,342 FLAT 333,LANE-66,PVR BUILDING 191 3100000001 EUR 10,205.00
P400000001 KRISH 40,222,222 FLAT 444,LANE-64,PVR BUILDING 191 4000000001 EUR 5,102.05
P500000001 SHAILIZA 40,777,777 FLAT 777,LANE-88,PVR BUILDING 191 5000000001 EUR 9,020.50
P500000001 SHAILIZA 40,777,777 FLAT 777,LANE-88,PVR BUILDING 1 5100000001 EUR 555,555.00
2)LEFT OUTER JOIN
It selects all the records from PRIMARY table even if a match does not exist in the
SECONDARY table.
SELECT A.PARTYID, A.NAME, A.PHONE, A.ADDRESS, B.ORG, B.ACCOUNT, B.CURR, B.BALANCE
FROM AMIT001/PARTY A
LEFT OUTER JOIN AMIT001/ACCOUNT B
4|Page
SANNIHITHA TECHNOLOGIES - 8885586684
ON A.PARTYID = B.PARTY
Output:
PARTYID NAME PHONE ADDRESS ORG ACCOUNT CURR BALANCE
P100000001 KOSARA 40,442,222 FLAT 101,LANE-22,PVR BUILDING 190 1000000001 USD 6,667.75
P100000001 KOSARA 40,442,222 FLAT 101,LANE-22,PVR BUILDING 191 1100000001 USD 4,444.75
P200000001 HENRY PAL 40,223,122 FLAT 131,LANE-55,PVR BUILDING 190 2000000001 EUR 1,122.05
P300000001 ROBIN 40,334,342 FLAT 333,LANE-66,PVR BUILDING 190 3000000001 EUR 1,002.05
P300000001 ROBIN 40,334,342 FLAT 333,LANE-66,PVR BUILDING 191 3100000001 EUR 10,205.00
P400000001 KRISH 40,222,222 FLAT 444,LANE-64,PVR BUILDING 191 4000000001 EUR 5,102.05
P500000001 SHAILIZA 40,777,777 FLAT 777,LANE-88,PVR BUILDING 191 5000000001 EUR 9,020.50
P500000001 SHAILIZA 40,777,777 FLAT 777,LANE-88,PVR BUILDING 1 5100000001 EUR 555,555.00
P600000001 KUMAR DEV 405,523,344 FLAT 801, LANE-88,PVR BUILDING - - - -
It selects all the records from SECONDARY table even if a match does not exist in the PRIMARY table.
SELECT A.PARTYID, A.NAME, A.PHONE, A.ADDRESS, B.ORG, B.ACCOUNT, B.CURR, B.BALANCE
FROM AMIT001/PARTY A
RIGHT OUTER JOIN AMIT001/ACCOUNT B ON A.PARTYID = B.PARTY
EXCEPTION JOIN
It selects all the records from SECONDARY table, which have no match in PRIMARY
table.
SELECT A.PARTYID, A.NAME, A.PHONE, A.ADDRESS, B.ORG, B.ACCOUNT, B.CURR, B.BALANCE
FROM AMIT001/PARTY A
EXCEPTION JOIN AMIT001/ACCOUNT B
ON A.PARTYID = B.PARTY
Output:
PARTYID NAME PHONE ADDRESS ORG ACCOUNT CURR BALANCE
P600000001 KUMAR DEV 405,523,344 FLAT 801,LANE-88,PVR BUILDING - - - -
CROSS JOIN
It maps PRIMARY table records with all records of secondary table.
1A) CURDATE ( )
04/19/16
2A)CURTIME ( )
13:51:35
3A) Find next day for current date (Current Date=12th May 2016)
SELECT CURDATE() + 1 DAY
FROM SYSIBM/SYSDUMMY1
4A) SELECT DATE('02/01/2016') + 1 DAY
FROM SYSIBM/SYSDUMMY1
5A) SELECT CURDATE() + 1 MONTH - DAY(CURDATE()) DAYS
FROM SYSIBM/SYSDUMMY1
5|Page
SANNIHITHA TECHNOLOGIES - 8885586684
A) WRKSPLF
WRKSPLF SELECT(User_Name)
6|Page