Имя: Пароль:
1C
1С v8
Подскажите как сделать запросом
0 Genayo
 
09.07.13
15:35
Есть две таблицы:
А В
А С
А D

А 100
В 98
С 105
D 107

Надо получить таблицу:
А 107
В 107
С 107
D 107
1 exwill
 
09.07.13
15:42
(0) Правило вывода озвучь.
2 1Сергей
 
09.07.13
15:42
рандомно чтоли?
3 Genayo
 
09.07.13
15:42
(1) Максимум из всех значений  во 2 таблице
4 badboychik
 
09.07.13
15:43
полное соединение с подзапросом, делов то
5 exwill
 
09.07.13
15:43
(3) А первая, тогда, зачем?
6 Ненавижу 1С
 
гуру
09.07.13
15:44
(3) а первая таблица зачем?
7 asady
 
09.07.13
15:45
(0) тухло совсем - а нафуя тогда первая таблица
8 exwill
 
09.07.13
15:45
(4) Любое соединение подойдет.
9 Genayo
 
09.07.13
15:46
(6) Для ограничения из чего максимум выбирать
10 exwill
 
09.07.13
15:46
+(8) Даже через запятую.
11 Ненавижу 1С
 
гуру
09.07.13
15:47
(9) непонятно ни разу
12 palpetrovich
 
09.07.13
15:47
истина,  как обчно, где-то рядом  ...ща появятся нюансы ;)
13 exwill
 
09.07.13
15:48
(9) Для А какое ограничение задано?
14 Genayo
 
09.07.13
15:50
(13) В смысле?
15 Ненавижу 1С
 
гуру
09.07.13
15:51
(14) в том смысле, что пока непонятна постановка задачи
16 Genayo
 
09.07.13
15:52
(11) Упрощенный пример, таких групп как таблица 1 несколько, для каждой нужно найти максимум и присвоить всем элементам группы.
17 exwill
 
09.07.13
15:53
(14) Как из первой таблицы понять, что для А задано ограничение 107? Как это выводится из твоих таблиц?
18 1Сергей
 
09.07.13
15:54
(17) + более того - непонятно как из первой таблицы получились A, B, C, D
19 Genayo
 
09.07.13
15:54
(17) Максимум из 2, вроде написал уже...
20 exwill
 
09.07.13
15:54
Т.е первая таблица абстрактный пример, а вторая конкретный.
Правильно?
21 Genayo
 
09.07.13
15:55
(18) Никак пока не получились. Это исходные таблицы.
22 palpetrovich
 
09.07.13
15:56
(18) дык, выбрать различные наверное
23 exwill
 
09.07.13
15:56
(19) А для В, как получилось 107? Тоже максимум из второй?
24 Ненавижу 1С
 
гуру
09.07.13
15:57
А В
С D

А 100
В 98
С 105
D 107

а если будет так?
25 1Сергей
 
09.07.13
15:57
(22) из разных колонок?
26 Genayo
 
09.07.13
15:58
(23) Да, для всех максимум из 2
27 Genayo
 
09.07.13
15:58
(24) Так не будет.
28 exwill
 
09.07.13
15:59
(26) Если результат выводится из второй таблицы, зачем тогда первая?
29 Genayo
 
09.07.13
15:59
Если слишком абстрактно - уточняю. В первой таблице - некоторое соответствие номенклатур, во 2 - ну скажем остатки по каждой номенклатуре.
30 exwill
 
09.07.13
16:00
(27) А как будет?
(стремительно приближается истерика)
31 palpetrovich
 
09.07.13
16:01
(27) давай уже колись что там, из твоих абстракций больше вопросов чем ответов :)
32 exwill
 
09.07.13
16:02
(29) Ладно, бог с ним. Если тебе объяснить как вывести из второй таблицы результат, тебя это устроит?
33 Бледно Золотистый
 
09.07.13
16:06
(29) Типа аналоги, и остаток каждого из аналогов = максимальному остатку среди них?
34 sirsp
 
09.07.13
16:06
(0)
   ВЫБРАТЬ "A" Поле1, "B" Поле2 ПОМЕСТИТЬ Таблица1
   ОБЪЕДИНИТЬ ВЫБРАТЬ "A", "C"
   ОБЪЕДИНИТЬ ВЫБРАТЬ "A", "D"
   ;
   ВЫБРАТЬ "A" Поле1, 100 Поле2 ПОМЕСТИТЬ Таблица2
   ОБЪЕДИНИТЬ ВЫБРАТЬ "B", 98
   ОБЪЕДИНИТЬ ВЫБРАТЬ "C", 105
   ОБЪЕДИНИТЬ ВЫБРАТЬ "D", 107
   ;
   ВЫБРАТЬ РАЗЛИЧНЫЕ
       МАКСИМУМ(Таблица2.Поле2) Поле1
   ПОМЕСТИТЬ
       Макс
   ИЗ
       Таблица2
       ВНУТРЕННЕЕ СОЕДИНЕНИЕ
       Таблица1
       ПО
           Таблица2.Поле1 = Таблица1.Поле1 ИЛИ Таблица2.Поле1 = Таблица1.Поле2
   ;
   ВЫБРАТЬ
       Таблица2.Поле1
       ,Макс.Поле1
   ИЗ
       Таблица2, Макс
35 Genayo
 
09.07.13
16:06
Уффф.. Таблица 1 задает перечень номенклатуры (А,В,С,D), для которой нужно получить максимальное значение. Таких непересекающихся перчней много. Так понятно?
36 Genayo
 
09.07.13
16:07
(33) Типа того.
37 Genayo
 
09.07.13
16:10
(34) Да что-то я ступил, не подумал про соединение с ИЛИ. Спасибо.
Здесь можно обсудить любую тему при этом оставаясь на форуме для 1Сников, который нужен для работы. Ymryn