Download presentation
Presentation is loading. Please wait.
Published byMarylou Harper Modified over 8 years ago
1
V6R1 – Database enhancements DECFLOAT data type BX literals FOR BIT DATA and binary compatibility Client special registers Grouping Sets and Super groups ASCII and CHR scalar functions ENCRYPT_AES scalar function
2
TIMESTAMP_FORMAT scalar functions and VARCHAR_FORMAT scalar function enhancements MONTHS_BETWEEN, ROUND_TIMESTAMP and TRUNC_TIMESTAMP scalar functions VALUES in SELECT INSERT in FROM Full Outer Join
3
Skip Locks Several restrictions related to NLSS, translation, UDTFs, and lateral correlation have been removed Ignore unsupported DDL syntax SYSTOOLS and SYSIBMADM schemas ALTER FUNCTION COMMENT and LABEL enhancements
4
NCHAR, NVARCHAR, and NCLOB Expressions in indexes Hidden columns Auto-generated timestamps FOR EACH STATEMENT on INSTEAD OF triggers Indicator variable values that indicate no update
5
128-byte cursor and statement names More than 120 columns in GROUP BY Remove number of schemas limit Several new statistical views RPG variables within procedure scope Precompiler support for IFS source
6
Grouping Sets and Super Groups SELECT SALES_DATE, SALES_PERSON, SUM(SALES) AS UNITS_SOLD, GROUPING(SALES_DATE) AS DATE_GROUP, GROUPING(SALES_PERSON) AS SALES_GROUP FROM SALES GROUP BY CUBE( SALES_DATE, SALES_PERSON) ORDER BY SALES_DATE, SALES_PERSON
7
SALES_DATE SALES_PERSON UNITS_SOLD DATE_GROUP SALES_GROUP ---------- ------------ ---------- ---------- ----------- 12/31/1995 GOUNOT 1 0 0 12/31/1995 LEE 6 0 0 12/31/1995 LUCCHESSI 1 0 0 12/31/1995 - 8 0 1 03/29/1996 GOUNOT 11 0 0 03/29/1996 LEE 12 0 0 03/29/1996 LUCCHESSI 4 0 0 03/29/1996 - 27 0 1 … - GOUNOT 50 1 0 - LEE 91 1 0 - LUCCHESSI 14 1 0 - - 155 1 1
8
SELECT WEEK(SALES_DATE) AS WEEK, DAYOFWEEK(SALES_DATE) AS DAY_WEEK, SALES_PERSON, SUM(SALES) AS UNITS_SOLD FROM SALES WHERE WEEK(SALES_DATE) = 13 GROUP BY ROLLUP( WEEK(SALES_DATE), DAYOFWEEK(SALES_DATE), SALES_PERSON ) ORDER BY WEEK, DAY_WEEK, SALES_PERSON
9
WEEK DAY_WEEK SALES_PERSON UNITS_SOLD ------- ---------- ------------- ------------ 13 6 GOUNOT 11 13 6 LEE 12 13 6 LUCCHESSI 4 13 6 – 27 13 7 GOUNOT 21 13 7 LEE 21 13 7 LUCCHESSI 4 13 7 - 46 13 - - 73 - - - 73
10
SET :RND_TMSTMP = ROUND_TIMESTAMP(’2000-03-18-17.30.00’, ’MONTH’); Returns: 2000-04-01-00.00.00.000000.
11
Allows programmer to dynamically generate & populate temporary tables as part of the query definition –Enable SQL access of in-memory tables maintained by application –Supports table-less queries Examples: SELECT deptnum, deptname FROM org WHERE deptnum <20 UNION ALL SELECT * FROM (VALUES(77,'New Department')) AS tmp(c1,c2) WITH proposedRates(prType, prRate) AS ( VALUES(?,?),(?,?),(?,?),(?,?) ) SELECT rmtype, prRate, ((prRate – rmRate)/rmRate)*100 AS RateChgPercent FROM rooms, proposedRates WHERE rmtype = prType ORDER BY RateChgPercent DESC VALUES on FROM
12
Insert in From Useful for: Default values Identity Columns Before insert triggers
13
Insert in From CREATE TABLE EMPSAMP (EMPNO INTEGER GENERATED ALWAYS AS IDENTITY, NAME CHAR(30), SALARY DECIMAL(10,2), DEPTNO SMALLINT, LEVEL CHAR(30), HIRETYPE VARCHAR(30) NOT NULL DEFAULT 'New Employee', HIREDATE DATE NOT NULL WITH DEFAULT) SELECT EMPNO, HIRETYPE, HIREDATE FROM FINAL TABLE ( INSERT INTO EMPSAMP (NAME, SALARY, DEPTNO, LEVEL) VALUES('Mary Smith', 35000.00, 11, 'Associate'))
14
Full Outer Join FileA AKey AText A 01 B Shoe FileB Bkey BText B Wallet C Purse Select AKey,Bkey,Atext,Btext From FileA full outer join FileB on Atext=Btext A,-,01,- B,B,Shoe,Wallet -,C,-,Purse
15
Hidden Timestamp CREATE TABLE tickets( ticket_ord INTEGER, ticket_qty INTEGER, ticket_event VARCHAR(10), ticket_ts TIMESTAMP NOT NULL IMPLICITLY HIDDEN FOR EACH ROW ON UPDATE AS ROW CHANGE TIMESTAMP); INSERT INTO tickets VALUES(1,11,’mvGAME1’),(2,8,’ihGAME4’);
16
Hidden Timestamp SELECT * FROM tickets UPDATE tickets SET ticket_qty = 6 WHERE ticket_ord = 2; SELECT ticket_ord, ticket_qty, ticket_event, ticket_ts FROM tickets Non-SQL interfaces automatically include any hidden columns
17
Bibliography What’s new for V6R1 in SQL Programming http://publib.boulder.ibm.com/infocenter/systems/scope/i5os/topic/sqlp/rbafywh atsnew.htm What’s new for V6R1 in SQL Reference http://publib.boulder.ibm.com/infocenter/systems/scope/i5os/topic/db2/rbafzwha tsnew.htm System i Technical Overviews http://www-304.ibm.com/jct01004c/systems/support/i/library/techoverviews/ DB2 for i5/OS SQL Reference http://publib.boulder.ibm.com/infocenter/systems/scope/i5os/topic/db2/rbafz.pdf Presentations http://www.statususer.org/html/newsletterArchive.html
Similar presentations
© 2025 SlidePlayer.com. Inc.
All rights reserved.