DB2性能调优

DB2性能调优,db2,Db2,我有一个DB2存储过程,运行了将近4分钟,获取了6000页的数据 请告诉我DB2中是否有任何可能的查询性能调优方法,以便使该过程执行得更快 创建的存储过程的基本结构如下 CREATE PROCEDURE SAMPLE_PROC(ID INT) RESULT SETS 1 P1: BEGIN DECLARE GLOBAL TEMPORARY TABLE SESSION.TEMP1 ( COLUMN_NAMES )ON COMMIT DROP TABLE; BEGIN DECLARE V

我有一个DB2存储过程,运行了将近4分钟,获取了6000页的数据

请告诉我DB2中是否有任何可能的查询性能调优方法,以便使该过程执行得更快

创建的存储过程的基本结构如下

CREATE PROCEDURE SAMPLE_PROC(ID INT)
RESULT SETS 1
P1: BEGIN

DECLARE GLOBAL TEMPORARY TABLE SESSION.TEMP1
(
    COLUMN_NAMES
)ON COMMIT DROP TABLE;

BEGIN
DECLARE V_PARAM_1 VARCHAR(8000);
DECLARE V_PARAM_2 VARCHAR(8000);
DECLARE CURSOR1 CURSOR WITH RETURN FOR

    SELECT 
        COLUMN_NAMES
    FROM SESSION.TEMP1
    GROUP BY 
        COLUMN_NAMES
    WITH UR;

 SELECT 
    RTRIM(IFNULL(PARAM_1, '')) PARAM_1, 
    RTRIM(IFNULL(PARAM_2, '')) PARAM_2 
 INTO
    V_PARAM_1,
    V_PARAM_2
 FROM
    PARAM_TABLE 
 WHERE 
    PARAM_ID = ID;

    INSERT INTO SESSION.TEMP1(COLUMN_NAMES)
        SELECT COLUMNS FROM (....) WHERE(...);

OPEN CURSOR1;
END;
END P1@
该过程由一个select组成,该select返回PARAM_表中的值,作为参数传递给原始查询。多个逗号分隔的值从表传递到查询


谢谢

PARAM_TABLE.PARAM_ID是唯一的还是主键?实际上PARAM_TABLE是视图您使用过可视化工具吗?