home clear 64x64
en blue 200x116 de orange 200x116 info letter User
suche 36x36
Neueste VersionenFixList
11.1.0.7 FixList
10.5.0.9 FixList
10.1.0.6 FixList
9.8.0.5 FixList
9.7.0.11 FixList
9.5.0.10 FixList
9.1.0.12 FixList
Haben Sie Probleme? - Kontaktieren Sie uns.
Kostenlos registrieren anmeldung-x26
Kontaktformular kontakt-x26

DB2 - Problembeschreibung

Problem IT07083 Status: Geschlossen

CASE EXPRESSION SIMPLIFICATION IN QUERY REWRITE

Produkt:
DB2 FOR LUW / DB2FORLUW / A50 - DB2
Problembeschreibung:
CASE expression simplification for performance improvement 
 
Example with simplification: 
 
Optimized Statement: 
------------------- 
SELECT 
  Q5.LADDER AS "MEASURE1", 
  Q5.$C1 AS "MEASURE2", 
  Q5.$C2 AS "CUSTOMERS", 
  Q5.$C3 AS "SPEND", 
  Q5.$C4 AS "TRANSACTIONS", 
  Q5.$C5 AS "UNITS" 
FROM 
  (SELECT 
     Q4.LADDER, 
     Q4.$C1, 
     COUNT(DISTINCT Q4.ACCOUNT_NUMBER), 
     SUM(Q4.SALES), 
     COUNT(DISTINCT Q4.TRANSACTION_ID), 
     SUM(Q4.UNITS) 
   FROM 
     (SELECT 
        Q3.LADDER, 
        Q2.BRAND_NAME, 
        Q1.ACCOUNT_NUMBER, 
        Q1.SALES, 
        Q1.TRANSACTION_ID, 
        Q1.UNITS 
      FROM 
        DM.TILL_TRANSACTION_LINE AS Q1, 
        DM.ITEM AS Q2, 
        DM.LADDER AS Q3 
      WHERE 
        (Q1.COUNTRY_CODE <> 'IE ') AND 
        (Q1.CATEGORY_ID > 0) AND 
        (Q1.ITEM_CODE = Q2.ITEM_CODE) AND 
        (Q1.LADDER_ID = Q3.LADDER_ID) AND 
        (0 < Q1.UNITS) AND 
        ('2013-08-01' <= Q1.TRANSACTION_DATE) AND 
        (Q1.TRANSACTION_DATE <= '2014-07-31') AND 
        Q1.CATEGORY_ID IN (280, 310) 
     ) AS Q4 
   GROUP BY 
     Q4.$C1, 
     Q4.LADDER 
  ) AS Q5 
 
 
Example without simplification: 
 
Optimized Statement: 
------------------- 
SELECT 
  Q11.$C0 AS "MEASURE1", 
  Q11.$C1 AS "MEASURE2", 
  Q11.$C2 AS "CUSTOMERS", 
  Q11.$C3 AS "SPEND", 
  Q11.$C4 AS "TRANSACTIONS", 
  Q11.$C5 AS "UNITS" 
FROM 
  (SELECT 
     Q10.$C0, 
     Q10.$C1, 
     COUNT(DISTINCT Q10.ACCOUNT_NUMBER), 
     SUM(Q10.SALES), 
     COUNT(DISTINCT Q10.TRANSACTION_ID), 
     SUM(Q10.UNITS) 
   FROM 
     (SELECT 
      CASE 
      WHEN ('LADDER' = 'GENDER') 
      THEN Q1.GENDER 
      WHEN ('LADDER' = 'LIFESTAGE_SEGMENT_NAME') 
      THEN Q6.LIFESTAGE_SEGMENT_NAME 
      WHEN ('LADDER' = 'TYPE_OF_STORE_NAME') 
      THEN Q5.TYPE_OF_STORE_NAME 
      WHEN ('LADDER' = 'CATEGORY') 
      THEN Q7.CATEGORY 
      WHEN ('LADDER' = 'LADDER') 
      THEN Q8.LADDER 
      WHEN ('LADDER' = 'SUB_LADDER') 
      THEN Q9.SUB_LADDER 
      WHEN ('LADDER' = 'BRAND_NAME') 
      THEN Q4.BRAND_NAME 
      WHEN ('LADDER' = 'SUB_BRAND_NAME') 
      THEN Q4.SUB_BRAND_NAME 
      WHEN ('LADDER' = 'AGE_BAND') 
etc
Problem-Zusammenfassung:
**************************************************************** 
* USERS AFFECTED:                                              * 
* ALL                                                          * 
**************************************************************** 
* PROBLEM DESCRIPTION:                                         * 
* See Error Description                                        * 
**************************************************************** 
* RECOMMENDATION:                                              * 
* Upgrade to DB2 version 10.5 fixpack 7                        * 
****************************************************************
Local-Fix:
Lösung
Problem was first fixed in DB2 version 10.5 fixpack 7
Workaround
keiner bekannt / siehe Local-Fix
Weitere Daten
Datum - Problem gemeldet    :
Datum - Problem geschlossen :
Datum - der letzten Änderung:
11.02.2015
22.01.2016
22.01.2016
Problem behoben ab folgender Versionen (IBM BugInfos)
Problem behoben lt. FixList in der Version
10.5.0.7 FixList