Имя: Пароль:
1C
1С v8
v8: Как оптимизировать запрос?
,
0 Klesk
 
11.05.12
10:00
ВЫБРАТЬ
   Номенклатура.Наименование,
   Номенклатура.Артикул,
   Номенклатура.Код,
   Номенклатура.Вес,
   Номенклатура.ЕдиницаИзмерения
ИЗ
   Справочник.Номенклатура КАК Номенклатура,
   (ВЫБРАТЬ
       НоменклатураДополнительныеРеквизиты.Свойство КАК Свойство,
       НоменклатураДополнительныеРеквизиты.Значение КАК Значение
   ИЗ
       Справочник.Номенклатура.ДополнительныеРеквизиты КАК НоменклатураДополнительныеРеквизиты) КАК ВложенныйЗапрос

СГРУППИРОВАТЬ ПО
   Номенклатура.Наименование,
   Номенклатура.Артикул,
   Номенклатура.Код,
   Номенклатура.Вес,
   Номенклатура.ЕдиницаИзмерения,
   ВложенныйЗапрос.Свойство,
   ВложенныйЗапрос.Значение

Очень долго выполняется, заранее спасибо
1 Reset
 
11.05.12
10:02
ВЫБРАТЬ
   Номенклатура.Наименование,
   Номенклатура.Артикул,
   Номенклатура.Код,
   Номенклатура.Вес,
   Номенклатура.ЕдиницаИзмерения
ИЗ
   Справочник.Номенклатура КАК Номенклатура
2 Klesk
 
11.05.12
10:03
нужны доп реквизиты
3 vinogradъ
 
11.05.12
10:03
соединением цепляй
4 Reset
 
11.05.12
10:03
(2) Ни слова о них в (0)
5 Gav_Gav
 
11.05.12
10:04
(0) Сделай "Левое Соединение"
6 MatrosoV AleXXXand_R
 
11.05.12
10:04
Выбрать через табличную часть
7 Cube
 
11.05.12
10:04
(0) Нужно начать крутить педали на системнике.
8 MatrosoV AleXXXand_R
 
11.05.12
10:05
Если нужна вся номенклатура из справочника - соединением, если только - у которых заполненая табличная часть - выборкой из табличной части
9 Klesk
 
11.05.12
10:19
Так?

ВЫБРАТЬ
   Номенклатура.Наименование,
   Номенклатура.Артикул,
   Номенклатура.Код,
   Номенклатура.Вес,
   Номенклатура.ЕдиницаИзмерения,
   НоменклатураДополнительныеРеквизиты.Свойство,
   НоменклатураДополнительныеРеквизиты.Значение
ИЗ
   Справочник.Номенклатура.ДополнительныеРеквизиты КАК НоменклатураДополнительныеРеквизиты
       ЛЕВОЕ СОЕДИНЕНИЕ Справочник.Номенклатура КАК Номенклатура
       ПО НоменклатураДополнительныеРеквизиты.Ссылка = Номенклатура.Ссылка

СГРУППИРОВАТЬ ПО
   Номенклатура.Наименование,
   Номенклатура.Артикул,
   Номенклатура.Код,
   Номенклатура.Вес,
   Номенклатура.ЕдиницаИзмерения,
   НоменклатураДополнительныеРеквизиты.Свойство,
   НоменклатураДополнительныеРеквизиты.Значение

Тоже не быстро, по ощущениям также, в консоли запросов - время выполнения не работает почему то
10 vinogradъ
 
11.05.12
10:22
группировка ннадо?
11 Maxus43
 
11.05.12
10:24
если там мильён доп реквизитов - то никак не убыстрить уже.
Значение - жутко составной тип? и надо все возможные?
12 hhhh
 
11.05.12
10:24
(9) СГРУППИРОВАТЬ зачем? там и так всё сгруппировано.
13 Klesk
 
11.05.12
10:28
(11) ну у каждой штук по пять, значения , да составной
(12) чтобы в таблицу выгрузить, а иначе не дает в качестве полей
14 Maxus43
 
11.05.12
10:30
(13) а номенклатуры сколько? мильён * 5 = 5 мильёнов.
про поля - неосилил, группировка тут причем вобще?
15 Klesk
 
11.05.12
10:31
(14) тыщ 10
16 aleks-id
 
11.05.12
10:32
ВЫБРАТЬ
   НоменклатураДополнительныеРеквизиты.Ссылка.Наименование,
   НоменклатураДополнительныеРеквизиты.Ссылка.Артикул,
   НоменклатураДополнительныеРеквизиты.Ссылка.Код,
   НоменклатураДополнительныеРеквизиты.Ссылка.Вес,
   НоменклатураДополнительныеРеквизиты.Ссылка.ЕдиницаИзмерения,
   НоменклатураДополнительныеРеквизиты.Свойство,
   НоменклатураДополнительныеРеквизиты.Значение
ИЗ
   Справочник.Номенклатура.ДополнительныеРеквизиты КАК НоменклатураДополнительныеРеквизиты
17 Klesk
 
11.05.12
10:32
вру , тыщ 25
18 ZanderZ
 
11.05.12
10:33
(15)
ВЫБРАТЬ
   НоменклатураДополнительныеРеквизиты.Ссылка.Наименование,
   НоменклатураДополнительныеРеквизиты.Ссылка.Артикул,
   НоменклатураДополнительныеРеквизиты.Ссылка.Код,
   НоменклатураДополнительныеРеквизиты.Ссылка.Вес,
   НоменклатураДополнительныеРеквизиты.Ссылка.ЕдиницаИзмерения,
   НоменклатураДополнительныеРеквизиты.Свойство,
   НоменклатураДополнительныеРеквизиты.Значение
ИЗ
   Справочник.Номенклатура.ДополнительныеРеквизиты КАК НоменклатураДополнительныеРеквизиты
19 ivanovnm
 
11.05.12
10:33
ВЫБРАТЬ
   НоменклатураДополнительныеРеквизиты.Ссылка.Наименование,
   НоменклатураДополнительныеРеквизиты.Ссылка.Артикул,
   НоменклатураДополнительныеРеквизиты.Ссылка.Код,
   НоменклатураДополнительныеРеквизиты.Ссылка.Вес,
   НоменклатураДополнительныеРеквизиты.Ссылка.ЕдиницаИзмерения
   НоменклатураДополнительныеРеквизиты.Свойство,
   НоменклатураДополнительныеРеквизиты.Значение
ИЗ
   Справочник.Номенклатура.ДополнительныеРеквизиты КАК НоменклатураДополнительныеРеквизиты
20 ivanovnm
 
11.05.12
10:34
Как все думают одинаково
21 Klesk
 
11.05.12
10:35
а почему в консоли запросов с итс, может время выполнения не работать? показывает 0,002 сек
22 Klesk
 
11.05.12
10:38
потому что тоже долго и на сколько быстрее непонятно
23 Александр Б
 
11.05.12
10:40
(22)
В (16), (18) и (19) самый быстрый вариант запроса. Быстрее некуда.

Долго выполняется вывод на экран. Сделай первые 100 или сколько надо, и тогда будет быстро. А если у тебя на экран формируется 15 тысяч записей, конечно это долго будет.
24 Александр Б
 
11.05.12
10:41
+(23) или сделай отбор какой-нибудь, и тоже ускориться.
25 Александр Б
 
11.05.12
10:41
*тся
26 ZanderZ
 
11.05.12
10:42
(21) видишь как быстро формируется, а ты говоришь... :)
27 Feanor
 
11.05.12
10:42
было уже?

ВЫБРАТЬ
   Номенклатура.Наименование,
   Номенклатура.Артикул,
   Номенклатура.Код,
   Номенклатура.Вес,
   Номенклатура.ЕдиницаИзмерения,
   Номенклатура.ДополнительныеРеквизиты.(
       НоменклатураДополнительныеРеквизиты.Свойство КАК Свойство,
       НоменклатураДополнительныеРеквизиты.Значение КАК Значение
   ) КАК НоменклатураДополнительныеРеквизиты
ИЗ
   Справочник.Номенклатура КАК Номенклатура
28 Feanor
 
11.05.12
10:43
+(27) тока вместо "НоменклатураДополнительныеРеквизиты.Свойство" просто "Свойство" и для "Значение" так же
29 Klesk
 
11.05.12
10:50
(28) ошибка отображения типов: остутствует отображения для типа '{http://v8.1c.ru/8.1/data/core}ValueTable
30 ИС-2
 
naïve
11.05.12
10:50
попробуй добавить поля на закладку индексирование
31 Feanor
 
11.05.12
10:53
(29) дак тебе для скд нада или просто запрос?
32 Klesk
 
11.05.12
13:06
для скд
33 Klesk
 
11.05.12
14:35
а как вывести ЭТО в таблицу в скд?

Строка - Артикул Наименование Значение
Столбец - Склад, Свойство

Значение не хочет вставать под свойство
34 Klesk
 
11.05.12
17:45
"ВЫБРАТЬ ПЕРВЫЕ 1000
|    СУММА(ЗаказыПоставщикамОстатки.ЗаказаноОстаток) КАК ЗаказаноОстаток,
|    СУММА(СвободныеОстаткиОстатки.ВНаличииОстаток) КАК ВНаличииОстаток,
|    СУММА(СвободныеОстаткиОстатки.ВРезервеОстаток) КАК ВРезервеОстаток,
|    СвободныеОстаткиОстатки.Склад КАК Склад,
|    ЦеныНоменклатурыСрезПоследних.ВидЦены КАК ВидЦены,
|    СУММА(ЦеныНоменклатурыСрезПоследних.Цена) КАК Цена,
|    НоменклатураДополнительныеРеквизиты.Ссылка.Артикул,
|    НоменклатураДополнительныеРеквизиты.Ссылка.Наименование,
|    НоменклатураДополнительныеРеквизиты.Ссылка.Код,
|    НоменклатураДополнительныеРеквизиты.Ссылка.Вес,
|    НоменклатураДополнительныеРеквизиты.Ссылка.ЕдиницаИзмерения,
|    НоменклатураДополнительныеРеквизиты.Свойство КАК Свойство,
|    НоменклатураДополнительныеРеквизиты.Значение
|ИЗ
|    РегистрНакопления.СвободныеОстатки.Остатки КАК СвободныеОстаткиОстатки,
|    РегистрСведений.ЦеныНоменклатуры.СрезПоследних КАК ЦеныНоменклатурыСрезПоследних,
|    РегистрНакопления.ЗаказыПоставщикам.Остатки КАК ЗаказыПоставщикамОстатки,
|    Справочник.Номенклатура.ДополнительныеРеквизиты КАК НоменклатураДополнительныеРеквизиты
|
|СГРУППИРОВАТЬ ПО
|    НоменклатураДополнительныеРеквизиты.Ссылка.Артикул,
|    НоменклатураДополнительныеРеквизиты.Ссылка.Наименование,
|    НоменклатураДополнительныеРеквизиты.Ссылка.Код,
|    НоменклатураДополнительныеРеквизиты.Ссылка.ЕдиницаИзмерения,
|    НоменклатураДополнительныеРеквизиты.Свойство,
|    ЦеныНоменклатурыСрезПоследних.ВидЦены,
|    СвободныеОстаткиОстатки.Склад,
|    НоменклатураДополнительныеРеквизиты.Значение,
|    НоменклатураДополнительныеРеквизиты.Ссылка.Вес
|ИТОГИ
|    СУММА(ЗаказаноОстаток),
|    СУММА(ВНаличииОстаток),
|    СУММА(ВРезервеОстаток),
|    СУММА(Цена)
|ПО
|    Склад,
|    ВидЦены,
|    Свойство"    


почему это намертво виснет? )
35 Bober
 
11.05.12
18:00
(34) открой запрос конструктором и перейди на закладку связи.
36 sapphire
 
11.05.12
18:05
(34) Перепиши запрос, не должно быть конструкций НоменклатураДополнительныеРеквизиты.Ссылка.{чего-то там}
Правильно оно виснет. Как написал запрос, так и работает.
37 Лоботряс
 
11.05.12
18:15
так еще быстрее должно быть чем в (16), (18),(19)
ВЫБРАТЬ
   Номенклатура.Наименование,
   Номенклатура.Артикул,
   Номенклатура.Код,
   Номенклатура.Вес,
   Номенклатура.ЕдиницаИзмерения,
   НоменклатураДополнительныеРеквизиты.Свойство,
   НоменклатураДополнительныеРеквизиты.Значение
ИЗ
Справочник.Номенклатура КАК Номенклатура
   ВНУТРЕННЕЕ СОЕДИНЕНИЕ Справочник.Номенклатура.ДополнительныеРеквизиты КАК НоменклатураДополнительныеРеквизиты ПО Номенклатура.Ссылка = НоменклатураДополнительныеРеквизиты.Ссылка
38 Лоботряс
 
11.05.12
18:20
Обращение через точку - это фу...
Есть два вида языков, одни постоянно ругают, а вторыми никто не пользуется.