|
Как запросом разделить одну большую таблицу
|
Я
|
|
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 | |
Очевидно 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 | |
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 | |
Компьютер — устройство разработанное для ускорения и автоматизации человеческих ошибок.
ВНИМАНИЕ! Если вы потеряли окно ввода сообщения, нажмите Ctrl-F5 или Ctrl-R или кнопку "Обновить" в браузере.
Тема не обновлялась длительное время, и была помечена как архивная. Добавление сообщений невозможно.
Но вы можете создать
новую ветку и вам обязательно ответят!
Каждый час на Волшебном форуме бывает более
2000 человек.