Имя: Пароль:
1C
1С v8
Запрос
,
0 DefMB
 
11.11.11
17:46
Можно ли в 1с наложить условие на равенство с вложенным запросом?
в SQL вроде можно было
Например:

ВЫБРАТЬ
   ОстаткиТоваров .НомерСтроки
ИЗ
   РегистрНакопления.ОстаткиТоваров КАК ОстаткиНоменклатуры
ГДЕ
    ОстаткиТоваров .НомерСтроки = (ВЫБРАТЬ МАХ(чегототам) ИЗ Регистр)
1 МихаилМ
 
11.11.11
17:47
можно
2 Megas
 
11.11.11
17:47
Хз... попробуй =)

Условие "в" работает точно.
3 Megas
 
11.11.11
17:48
Вообще народ ленивый становится.... 5 сек на попробовать влом потратить.. проще в мисту написать.
4 DefMB
 
11.11.11
17:48
Уcловие "В" работает точно, а вот "=" никак
5 DefMB
 
11.11.11
17:49
(1) приведи пример
6 viktor_vv
 
11.11.11
17:51
(4) И как-ты себе представляшь "=" между таблицами. Может тогда =(Выбрать Первые 1 Max() ИЗ ).
7 Megas
 
11.11.11
17:52
(6) Пробовал ? Работает?
8 viktor_vv
 
11.11.11
17:52
Или внутренне соединение.
9 viktor_vv
 
11.11.11
17:54
(7) Ну в чистом скуле работает. В восьмерке там есть какие-то траблы, но не пробовал.
10 DefMB
 
11.11.11
18:38
(6) тоже не работает
11 viktor_vv
 
11.11.11
18:44
Ну посомтрел в консоле. Так он даже синтаксический котроль не проходит.

ВЫБРАТЬ
   РеализацияТоваровУслуг.Ссылка
ИЗ
   Документ.РеализацияТоваровУслуг КАК РеализацияТоваровУслуг
ГДЕ
   РеализацияТоваровУслуг.Ссылка =
           (ВЫБРАТЬ
               МАКСИМУМ(РеализацияТоваровУслуг2.Ссылка) КАК Ссылка
           ИЗ
               Документ.РеализацияТоваровУслуг КАК РеализацияТоваровУслуг2)

А в скуле такая же конструкция работает.

use SkladNew
Select *
From _1Sjourn as Ж
Where Ж.Date_Time_IDDOC = (Select Max(Ж2.Date_Time_IDDOC) From _1Sjourn as Ж2)
12 DefMB
 
11.11.11
18:49
мда, видать можно только условие по "В" накладывать. Ладно буду обходиться соединениями
Требовать и эффективности, и гибкости от одной и той же программы — все равно, что искать очаровательную и скромную жену... по-видимому, нам следует остановиться на чем-то одном из двух. Фредерик Брукс-младший