Нижеследующий запрос будет быстрее в полуторке или в двойке?:

select di.* , p.price_retail p
from docum_items di, sp_products p
where di.id_product = p.id_product
and di.id_docum in (6,7)

где sp_products это (таблица products содержит десятки тысяч записей): 

CREATE PROCEDURE SP_PRODUCTS
RETURNS (
    ID_PRODUCT INTEGER,
    NAME VARCHAR(30),
    FULLNAME VARCHAR(40),
    DESCRIPTION VARCHAR(90),
    ID_GROUP INTEGER,
    PRICE_RETAIL NUMERIC(11,4),
    PRICE_RETAIL_VAL NUMERIC(11,4),
    NORMA NUMERIC(11,4),
    ID_UNIT INTEGER,
    SHORTCODE VARCHAR(25),
    WARNING SMALLINT,
    MAXDISCOUNT NUMERIC(11,4),
    ID_USER INTEGER,
    DATETIME_CHANGE TIMESTAMP,
    NOTE_CHAR CHAR(1),
    FLAG INTEGER,
    ID_ANALOG INTEGER)
AS
DECLARE VARIABLE ID_REGION INTEGER;
DECLARE VARIABLE RATE NUMERIC(11,4);
BEGIN
  select first 1 id_region_our from main_info into :id_region;

  FOR SELECT ID_PRODUCT,
             NAME,
             FULLNAME,
             DESCRIPTION,
             ID_GROUP,
             NORMA,
             ID_UNIT,
             SHORTCODE,
             WARNING,
             MAXDISCOUNT,
             ID_USER,
             DATETIME_CHANGE,
             NOTE_CHAR,
             FLAG,
             ID_ANALOG
      FROM PRODUCTS
      order by id_product
      INTO :ID_PRODUCT,
           :NAME,
           :FULLNAME,
           :DESCRIPTION,
           :ID_GROUP,
           :NORMA,
           :ID_UNIT,
           :SHORTCODE,
           :WARNING,
           :MAXDISCOUNT,
           :ID_USER,
           :DATETIME_CHANGE,
           :NOTE_CHAR,
           :FLAG,
           :ID_ANALOG
  DO
  BEGIN
    price_retail = 0;
    select price_retail from region_prices where id_region=:id_region and 
id_product=:id_product into :price_retail;

    select rate from SP_GET_RATE((select id_currency_val from 
main_info),current_date) into :rate;
    if (rate is null) then rate=1;
    price_retail_val = price_retail / rate;

    SUSPEND;
  END
END

Ответить