Форум: "Базы";
Текущий архив: 2004.05.30;
Скачать: [xml.tar.bz2];
ВнизПроблема с условием в хранимой процедуре Найти похожие ветки
← →
Gennadiy © (2004-05-11 15:30) [0]Увыжыемые мастера!!!
У меня есть вот такая процедура:
CREATE PROCEDURE PR_NEWOSTATSKLAD (
I_STORES INTEGER,
I_ARTICULS DECIMAL(18,0))
RETURNS (
O_PRICE_ARENDA NUMERIC(15,2),
O_PRICE_TRANSPORT NUMERIC(15,2),
O_PRICE_PRIHOD NUMERIC(15,2),
O_KOLVO_KG NUMERIC(15,3),
AS
begin
If ((:i_stores is null) and (:i_articuls is null)) then
begin
for select
g.articul_id ARTICUL_ID, a.name, g.store_id STORE_ID, stor.name,
(select sum(goods.ue) from goods where (goods.articul_id=g.articul_id) KOLVO__KG,
from stores stor, goods g, articuls a
where g.articul_id=a.id and g.store_id=stor.id
group by g.articul_id, g.store_id,a.name, stor.name
INTO
:o_articul_id,
:o_articul_name,
:o_store_id,
:o_store_name,
:o_kolvo_kg
do
suspend;
end
//
Так вот проблема в строке
(select sum(goods.ue) from goods where (goods.articul_id=g.articul_id) KOLVO_KG когда выполняется этот запрос то подсчитывается общее количество товара, но мне надо чтобы в этом запросе значения ноль не выводились т.е. что то типа вот этого условия (select sum(goods.ue) from goods where (goods.articul_id=g.articul_id)<>0, но такое условие очень сильно замедляет выполнение процедуры. Как правильно мне добавить это условие.
← →
Johnmen © (2004-05-11 15:38) [1]
if (KOLVO__KG<>0) then suspend;
← →
Johnmen © (2004-05-11 15:38) [2]
if (o_kolvo_kg<>0) then suspend;
Страницы: 1 вся ветка
Форум: "Базы";
Текущий архив: 2004.05.30;
Скачать: [xml.tar.bz2];
Память: 0.45 MB
Время: 0.039 c