Гость
Целевая тема:
Создать новую тему:
Автор:
Форумы / Microsoft SQL Server [игнор отключен] [закрыт для гостей] / Как соединить такое? / 25 сообщений из 32, страница 1 из 2
18.04.2019, 12:16
    #39803261
m1ke423
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Как соединить такое?
Торговая точка/товарКоличество (шт.)Сумма (сум)Дата заказаSAL0087.1670160009834660019.07.20181325300225510019.07.2018151210058460019.07.2018201210062640019.07.2018221230001127400019.07.2018222581006088770019.07.201827122000668200019.07.2018272524001603680019.07.2018

есть такая таблица.
первая строка это заказ, а все последующие это ид товара который входил в этот заказ. Как вывести это через union select?
Модератор: Поработал визуализатором
...
Рейтинг: 0 / 0
18.04.2019, 12:30
    #39803270
andreymx
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Как соединить такое?
m1ke423,

мало данных
существующий пример плохо визуализирован
нет корректного тестового примера
...
Рейтинг: 0 / 0
18.04.2019, 12:58
    #39803286
a_voronin
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Как соединить такое?
m1ke423,

Может основы архитектуры БД посмотреть?

https://ru.wikipedia.org/wiki/Третья_нормальная_форма
...
Рейтинг: 0 / 0
18.04.2019, 13:00
    #39803287
a_voronin
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Как соединить такое?
m1ke423,

А если работать с данными в таком виде, то придется через хитрозакрученную Ж изгаляться с помощью оконных функций, вроде FIRST_VALUE() OVER .
...
Рейтинг: 0 / 0
18.04.2019, 13:02
    #39803289
TaPaK
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Как соединить такое?
m1ke423Торговая точка/товарКоличество (шт.)Сумма (сум)Дата заказаSAL0087.1670160009834660019.07.20181325300225510019.07.2018151210058460019.07.2018201210062640019.07.2018221230001127400019.07.2018222581006088770019.07.201827122000668200019.07.2018272524001603680019.07.2018

есть такая таблица.
первая строка это заказ, а все последующие это ид товара который входил в этот заказ. Как вывести это через union select?
Модератор: Поработал визуализатором
нормализация -1 порядка?
...
Рейтинг: 0 / 0
18.04.2019, 13:06
    #39803297
a_voronin
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Как соединить такое?
TaPaK,

Это не нормализация никакого порядка. Даже в ХД в таком виде не держат данные.
...
Рейтинг: 0 / 0
18.04.2019, 13:06
    #39803298
m1ke423
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Как соединить такое?
andreymx,

Копировал с экселя, криво вставилось.
Нужно вывести топ 3 заказа за каждый месяц в 2018 году.
Первая строка Это Номер заказа, Торговая точка, кол-во продукции, сумма и так далее
А во второй строке через union select нужно объединить из двух таблиц в один столбец.

То есть
"Торговая Точка"/"Код Товара"
'Магазин'
'3123'

хотя лучше так: http://prntscr.com/ndm4v4
...
Рейтинг: 0 / 0
18.04.2019, 13:08
    #39803300
Kopelly
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Как соединить такое?
Я так понял нужно получить такую таблицу с помощью Union all:
Код: sql
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
15.
16.
17.
18.
19.
Select [Торговая точка/товар],
          [Количество],
          [Дата] 
From (
  Select [НомерЗаказа] as  [Торговая точка/товар],
            [Количество],
            [Дата],
            1 as [Уровень],
            [Номер/ИД Заказа] as [Заказ]
     From [Заказы]
  union all
  Select [ИД] as  [Торговая точка/товар],
            [Количество],
            [Дата],
            2 as [Уровень],
            [Номер/ИД Заказа] as [Заказ]
     From [СтрокиЗаказа]
) x
Order by [Заказ], [Уровень]
...
Рейтинг: 0 / 0
18.04.2019, 13:12
    #39803304
a_voronin
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Как соединить такое?
Kopelly,

Вы за автора сделали нормальзацию, в частности попытались ввести ключи.
...
Рейтинг: 0 / 0
18.04.2019, 13:12
    #39803306
Посетитель
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Как соединить такое?
a_voroninKopelly,

Вы за автора сделали нормальзацию, в частности попытались ввести ключи.

Автор спрашивал, как вывести(да, коряво спрашивал)
а вы за автора додумали про нормализацию и хранение.
...
Рейтинг: 0 / 0
18.04.2019, 13:24
    #39803318
982183
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Как соединить такое?
Даже при такой левой схеме, должен быть признак, отличающий строку идентифицирующую заказ от строк с товарами этого(этих) заказов.
...
Рейтинг: 0 / 0
18.04.2019, 13:25
    #39803320
TaPaK
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Как соединить такое?
982183Даже при такой левой схеме, должен быть признак, отличающий строку идентифицирующую заказ от строк с товарами этого(этих) заказов.
есть буквы/нет букв
...
Рейтинг: 0 / 0
18.04.2019, 13:26
    #39803322
982183
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Как соединить такое?
m1ke423хотя лучше так: http://prntscr.com/ndm4v4
Это исходные данные, или результат, который надо получить?
В любом случае - нужна вторая часть задачи.
...
Рейтинг: 0 / 0
18.04.2019, 13:27
    #39803323
982183
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Как соединить такое?
TaPaK982183Даже при такой левой схеме, должен быть признак, отличающий строку идентифицирующую заказ от строк с товарами этого(этих) заказов.есть буквы/нет букв
Логично.
Но интуиция вещь не всегда точная.
...
Рейтинг: 0 / 0
18.04.2019, 13:28
    #39803326
982183
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Как соединить такое?
+ там ID есть.
...
Рейтинг: 0 / 0
18.04.2019, 13:30
    #39803330
m1ke423
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Как соединить такое?
982183,

Это результат который надо получить
...
Рейтинг: 0 / 0
18.04.2019, 13:31
    #39803331
Посетитель
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Как соединить такое?
m1ke423982183,

Это результат который надо получить

вам же уже написали пример, как можно получить такой результат.
или надо угадать вашу структуру данных и написать вам готовый запрос?
...
Рейтинг: 0 / 0
18.04.2019, 13:31
    #39803332
982183
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Как соединить такое?
Тогда Kopelly дал совершенно правильное направление.

Осталось только понять, что для получения результата надо видеть и первичные данные или просто их структуру.
...
Рейтинг: 0 / 0
18.04.2019, 15:01
    #39803423
Alibek B
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Как соединить такое?
m1ke423все последующие
Последующие — это какие?
...
Рейтинг: 0 / 0
18.04.2019, 15:13
    #39803430
m1ke423
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Как соединить такое?
Alibek B.,

http://prntscr.com/ndm4v4
Обратите внимание на данный скриншот. Это результат который должен получиться
...
Рейтинг: 0 / 0
18.04.2019, 15:18
    #39803433
Гавриленко Сергей Алексеевич
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Как соединить такое?
m1ke423Alibek B.,

http://prntscr.com/ndm4v4
Обратите внимание на данный скриншот. Это результат который должен получитьсяИз чего он должен получиться? Из воздуха?

Будьде добры выполнить рекомендации из п.4 и п.6
...
Рейтинг: 0 / 0
18.04.2019, 15:19
    #39803435
TaPaK
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Как соединить такое?
Гавриленко Сергей Алексеевичm1ke423Alibek B.,

http://prntscr.com/ndm4v4
Обратите внимание на данный скриншот. Это результат который должен получитьсяИз чего он должен получиться? Из воздуха?

Будьде добры выполнить рекомендации из п.4 и п.6
вы что не художник? нарисуйте!
...
Рейтинг: 0 / 0
18.04.2019, 15:46
    #39803451
Nika gnome
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Как соединить такое?
m1ke423,
А теперь добавь ещё одну такую группу "строки и подстроки", перемешай все строки и ещё разок объясни, где там группа, а где все члены этой группы.

Ты введи ещё один столбец с кодом группы. И сделай так, чтобы у всех строк одной группы был общий одинаковый код.
Можешь немного ещё улучшить - выдели после этого первую строку в отдельную таблицу.
Вот теперь у тебя получится нормализованная человеческая таблица, с которой можно будет работать.

А то, что ты тут нарисовал - это ты пытался пользоваться SQL Server'ом так, как ты всегда пользовался Excel'ем.
...
Рейтинг: 0 / 0
18.04.2019, 18:35
    #39803570
iiyama
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Как соединить такое?
Человеку, скорее всего просто нужен отчет
и слать его нужно не в проектирование, а в репортинг
Описанием своего UNION он пытался, понятными для этого раздела словами, объяснить, что первой строкой ему нужна сумма по группе заказа

PS. Все выше написанное исключительно ИМХО
...
Рейтинг: 0 / 0
18.04.2019, 19:13
    #39803585
m1ke423
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Как соединить такое?
Давайте попробую объяснить более понятно
Я стажёр в IT отделе одной из фирм. Опыт с t-sql всего неделя.
Дали задание:

Необходимо составить топ 3 отчёта по сумме продаж за каждый месяц, за 2018 год. И есть пример как это должно выглядеть в ssms
http://prntscr.com/ndm4v4

То есть первая строка выдаёт сам заказ (SAL0087.1670), название торговой точки(Азизбек.... МЧЖ), единица измерения (блоки) с общим количеством товара (2060) и суммой (98 миллионов)
А ниже собственно (1325) ид товара, (Sarbast Original) имя товара у которого ид(1325), кол-во штук даного товара и собственно общая сумма. Сумму можно найти умножением Кол-ва на цену 1 товара

Дополнительную информацию в виде моего кода и прочего могу скинуть завтра когда буду в офисе
...
Рейтинг: 0 / 0
Форумы / Microsoft SQL Server [игнор отключен] [закрыт для гостей] / Как соединить такое? / 25 сообщений из 32, страница 1 из 2
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]