powered by simpleCommunicator - 2.0.61     © 2026 Programmizd 02
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Форумы / Firebird, InterBase [игнор отключен] [закрыт для гостей] / Помогите с запросом
25 сообщений из 64, страница 2 из 3
Помогите с запросом
    #38461953
Фотография Симонов Денис
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
SLebedev,

ты текст процедуры давай. А также покажи план запроса и скажи какие индексы есть.
...
Рейтинг: 0 / 0
Помогите с запросом
    #38461961
Фотография Симонов Денис
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
SLebedev,

лучше конечно через join. Да и запросы в теги
Код: plaintext
 [SRC sql][/SRC]
заключай
...
Рейтинг: 0 / 0
Помогите с запросом
    #38461985
Dimitry Sibiryakov
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
SLebedevтебе какие цифры? время исполнения запроса и процедуры? или анализ
производительности?
Мне те цифры, которые выводит isql при set plan on; set stats on;
Posted via ActualForum NNTP Server 1.5
...
Рейтинг: 0 / 0
Помогите с запросом
    #38461994
SLebedev
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Dimitry Sibiryakov,
из IBExpert не пойдёт?
...
Рейтинг: 0 / 0
Помогите с запросом
    #38461995
Фотография Симонов Денис
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
SLebedev,

пойдёт
...
Рейтинг: 0 / 0
Помогите с запросом
    #38462000
Фотография Симонов Денис
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
SLebedev,

только fetchAll нажимай!
...
Рейтинг: 0 / 0
Помогите с запросом
    #38462002
Мимопроходящий
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Hello, Симонов Денис!
You wrote on 12 ноября 2013 г. 15:04:32:

Симонов Денис> только fetchAll нажимай!
сломал интригу.
ирод.
Posted via ActualForum NNTP Server 1.5
...
Рейтинг: 0 / 0
Помогите с запросом
    #38462009
Dimitry Sibiryakov
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
SLebedevиз IBExpert не пойдёт?
Нет, из Эксперта - не пойдёт.
Posted via ActualForum NNTP Server 1.5
...
Рейтинг: 0 / 0
Помогите с запросом
    #38462035
SLebedev
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
ну вот

таблица 1 (PRODUCT, 96934 записей)
Код: sql
1.
2.
3.
4.
5.
6.
CREATE TABLE PRODUCT (
    CAT         VARCHAR(20) NOT NULL COLLATE PXW_CYRL,
    ART         VARCHAR(20) NOT NULL COLLATE PXW_CYRL,
    PRODUCT_ID  INTEGER NOT NULL,
    NAME        VARCHAR(255) COLLATE PXW_CYRL,
);


первичный ключ по CAT, ART

таблица 2 (LOG, 2766727 записей)
Код: sql
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
CREATE TABLE LOG (
    PRODUCT_ID    INTEGER NOT NULL,
    NUM           INTEGER NOT NULL,
    OPERATION_ID  INTEGER NOT NULL,
    CLIENT_ID     INTEGER,
    SCLAD_ID      INTEGER,
    OPERATOR_ID   INTEGER,
    COLVO         FLOAT,
    DATA          DATE,
    ST            SMALLINT,
    NPP           SMALLINT NOT NULL
);


первичный ключ по PRODUCT_ID, NUM, NPP

запрос
Код: sql
1.
2.
3.
4.
5.
select b.art,sum(a.colvo*a.st)
from log a,product b where a.product_id
in (select product_id from product where cat="BMW")
and a.product_id=b.product_id
group by 1


Execute 8s968ms

процедура
Код: sql
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
15.
16.
17.
18.
19.
20.
create or alter procedure A1
returns (
    ART varchar(20),
    OST numeric(15,2))
as
declare variable ID integer;
begin
  for select product_id, art
  from product
  where cat="BMW"
  into :id, :art
  do
   begin

    select sum(colvo*st) from log where product_id=:id
    into :ost;

    suspend;
   end
end


Execute 172ms
...
Рейтинг: 0 / 0
Помогите с запросом
    #38462041
Мимопроходящий
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
голосую: убить.

(с)
Posted via ActualForum NNTP Server 1.5
...
Рейтинг: 0 / 0
Помогите с запросом
    #38462043
Фотография DarkMaster
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
SLebedev,

Connect/Disconnect где?
...
Рейтинг: 0 / 0
Помогите с запросом
    #38462045
Dimitry Sibiryakov
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Мимопроходящийголосую: убить.
+1

И того, кто учил этого чудака писать запросы - тоже.
Posted via ActualForum NNTP Server 1.5
...
Рейтинг: 0 / 0
Помогите с запросом
    #38462046
Фотография Симонов Денис
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
SLebedev,

а планы? А индексы где? А то можно подумать что у тебя даже PK в не в одной таблице нету.
Да и скриншоты сюда публиковать не надо.

SLebedev
Код: sql
1.
2.
3.
4.
5.
select b.art,sum(a.colvo*a.st)
from log a,product b where a.product_id
in (select product_id from product where cat="BMW")
and a.product_id=b.product_id
group by 1



Запрос мегакривой!
За where cat="BMW" поубивал бы
...
Рейтинг: 0 / 0
Помогите с запросом
    #38462052
SLebedev
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Dimitry Sibiryakov,
под планами ты имеешь в виду вот это?

PLAN (PRODUCT INDEX (PRODUCT_IDX1))
PLAN JOIN (B ORDER PRODUCT_IDX4, A INDEX (LOG_IDX1))
...
Рейтинг: 0 / 0
Помогите с запросом
    #38462054
Фотография Симонов Денис
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
SLebedevCOLVO FLOAT,

Гениально! Т.е. можно что типа 2,17542445 шт
...
Рейтинг: 0 / 0
Помогите с запросом
    #38462057
SLebedev
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Симонов Денис,

нет 0,15 кг, т.к. это краска, она приходит в кг, а расходуется в граммах
...
Рейтинг: 0 / 0
Помогите с запросом
    #38462058
Dimitry Sibiryakov
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
SLebedevпод планами ты имеешь в виду вот это?
Я уже сказал: то, что выводит isql. IBExpert - не пойдёт.

Но с тобой в принципе уже всё ясно.
Posted via ActualForum NNTP Server 1.5
...
Рейтинг: 0 / 0
Помогите с запросом
    #38462062
Фотография Симонов Денис
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
SLebedev,

структура кривая, запрос кривой, индексы ты так и не привёл. Версию сервера тоже не озвучил. Нафигачил какой-то строковый литерал в двойных кавычках. Эдак быстро не заработает.
...
Рейтинг: 0 / 0
Помогите с запросом
    #38462064
Фотография Симонов Денис
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Dimitry SibiryakovЯ уже сказал: то, что выводит isql.

для этого надо ещё знать где он находится
...
Рейтинг: 0 / 0
Помогите с запросом
    #38462065
SLebedev
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Симонов Денис,

FB 2.0 Classic

PRODUCT кроме ПК имеет индекс по PRODUCT_ID
LOG кроме ПК имеет индекс по PRODUCT_ID
...
Рейтинг: 0 / 0
Помогите с запросом
    #38462075
Фотография Симонов Денис
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
SLebedev,

ты можешь DDL для всех индексов PK и FK привести?
...
Рейтинг: 0 / 0
Помогите с запросом
    #38462081
SLebedev
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Симонов Денис,
не знаю что такое DDL, но кроме ПК и индекса по PRODUCT_ID других индексов нет, FK тоже нет
...
Рейтинг: 0 / 0
Помогите с запросом
    #38462082
Dmitry Kurbsky
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Код: sql
1.
2.
3.
4.
5.
select b.art,sum(a.colvo*a.st)
from log a,product b where a.product_id
in (select product_id from product where cat="BMW")
and a.product_id=b.product_id
group by 1



Не делай так. Не надо этого.
...
Рейтинг: 0 / 0
Помогите с запросом
    #38462087
SLebedev
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Dmitry Kurbsky,

а как?
...
Рейтинг: 0 / 0
Помогите с запросом
    #38462095
Фотография Симонов Денис
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
SLebedev,

а подумать?
...
Рейтинг: 0 / 0
25 сообщений из 64, страница 2 из 3
Форумы / Firebird, InterBase [игнор отключен] [закрыт для гостей] / Помогите с запросом
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]