Вход | Регистрация

1С:Предприятие :: 1С:Предприятие 8 общая

Как запросом разделить одну большую таблицу

Как запросом разделить одну большую таблицу
Я
   Trotter
 
21.09.16 - 12:52
Как запросом разделить одну большую таблицу на несколько маленьких, а потом их склеить ?

Дано:

id  Товар   код

a   Товар1   1
a   Товар2   2
b   Товар1   1
b   Товар2   2
c   Товар1   1
c   Товар2   2

Нужно
id  Товар  Код   id  Товар  Код   id  Товар  Код

a   Товар1  1    b   Товар1  1    с   Товар1  1
a   Товар2  2    b   Товар2  2    с   Товар2  2
 
 
   DrShad
 
1 - 21.09.16 - 12:54
никак
   leonidk
 
2 - 21.09.16 - 12:55
Если количество ID ( маленьких таблиц) известно то можно. Иначе только программное составление запроса.
   DrZombi
 
3 - 21.09.16 - 12:56
(0) Группировка по колонкам
Вы может про СКД? :)
   Trotter
 
4 - 21.09.16 - 12:57
(3) не СКД ) нужно выбрать так вот данные, а потом сравнить на не соответствие в колонках
   Vladal
 
5 - 21.09.16 - 12:57
Была давно тема, как разделить номенклатуру в две колонки в запросе.
Посмотри http://catalog.mista.ru/public/100854/
Там и на СКД и без СКД.
   gitotuta
 
6 - 21.09.16 - 12:58
Это склейка по номеру строки
   DrZombi
 
7 - 21.09.16 - 13:01
(4) Напиши СКД. Потом выгрузишь результат в ТЗ :)
   PiterPrg
 
8 - 21.09.16 - 13:04
(2) Разумеется программное.
А иначе как?
Колонок в запросе = 3 * количество различных ID

Ну или (7) - прекрасный вариант
   leonidk
 
9 - 21.09.16 - 13:07
(8) Ну мало ли, может быть у автора вариантов id 3.
Итого 3 виртуальные таблицы соединить в запросе и готово.
   Trotter
 
10 - 21.09.16 - 13:10
(9) Пример можно ?)
 
 Рекламное место пустует
   Очевидно
 
11 - 21.09.16 - 13:15
(10) это всё "Велосипедные решения"- Если количество id - значение переменное. Если их всегда 3 тогда прокатит ... (Запрос не умеет создавать новые поля/колонки исходя из расчетных значений. Все поля/колонки должны быть прописаны в запросе).
   ovrfox
 
12 - 21.09.16 - 13:32
К-во таблиц:
Выбрать Различные ID 
Поместить ВсеИД
ИЗ Таблица;
--К-во пар
Выбрать а.ID как ИДЛев, b.ID ИДПрав
поместить пары
ИЗ ВсеИД а, ВсеИД в;
Выбрать ИДЛев, ИДПрав, ...рез сравнения...
ИЗ Пары
Соединить Таблица Лев По ИДЛев = Лев.ID
Соединить Таблица Прав По ИДПрав = Прав.ID
Где Лев.Товар = Прав.Товар
   VladZ
 
13 - 21.09.16 - 13:37
(0) Зачем?
   iceman2112
 
14 - 21.09.16 - 13:41
(13) Пишет сравнить нужно id чтоли. Не ясно чем ему группировка по товару или код не устраивает. Потом обходи - сравнивай
   leonidk
 
15 - 21.09.16 - 13:50
(10) Наверно как то так
ВЫБРАТЬ
    Товары.ИД,
    Товары.Товар,
    Товары.Код
ПОМЕСТИТЬ ИД1
ИЗ 
    Справочник.Товары КАК Товары
ГДЕ
    Товары.ИД = &ИД1
//////////////////////////////////////////////////

ВЫБРАТЬ
    Товары.ИД,
    Товары.Товар,
    Товары.Код
ПОМЕСТИТЬ ИД2
ИЗ 
    Справочник.Товары КАК Товары
ГДЕ
    Товары.ИД = &ИД2
//////////////////////////////////////////////////

ВЫБРАТЬ
    ....
////////////////////////////

ВЫБРАТЬ
    ИД1.ИД,
    ИД1.Товар,
    ИД1.Код,
    ИД2.ИД КАК ИД2,
    ИД2.Товар КАК Товар2,
    ИД2.Код КАК Код2,
        ....
ИЗ
    ИД1 КАК ИД1
        ПОЛНОЕ СОЕДИНЕНИЕ ИД2 КАК ИД2
        ПО ИД1.Код = ИД2.Код
        ПОЛНОЕ СОЕДИНЕНИЕ ИД3 КАК ИД3
        ПО ИД1.Код = ИД3.Код 


С соединениями/групировками поиграться для получения наилучшего результата
   Trotter
 
16 - 21.09.16 - 14:17
спасибо всё получилось как нужно )
   Trotter
 
17 - 21.09.16 - 14:18
(15) спасибо.

Список тем форума
Рекламное место пустует  Рекламное место пустует
ВНИМАНИЕ! Если вы потеряли окно ввода сообщения, нажмите Ctrl-F5 или Ctrl-R или кнопку "Обновить" в браузере.
Тема не обновлялась длительное время, и была помечена как архивная. Добавление сообщений невозможно.
Но вы можете создать новую ветку и вам обязательно ответят!
Каждый час на Волшебном форуме бывает более 2000 человек.
Рекламное место пустует