Добро пожаловать в форум, Guest  >>   Войти | Регистрация | Поиск | Правила | В избранное | Подписаться
Все форумы / Microsoft SQL Server Новый топик    Ответить
 Проблемы с выборкой данных  [new]
solitary
Member

Откуда:
Сообщений: 16
Здравствуйте!
Прошу Вашей помощи в таком вопросе...

Имеются две таблицы, таблица A (заголовок):
Code | DocID | Date

Таблица B (детальная часть):
Code | Prod | Price
Code | Prod | Price
Code | Prod | Price

Допустим, это упрощенная таблица продаж, где Prod - это товары, Date - дата продажи...
Естественно существует ряд значений в таблице A с различными датами Date и соответствующие им значения в таблице B. Мне нужно получить самую первую дату продажи каждого товара для всех товаров, содержащихся в таблице B, т.е.
Prod | MinDate | Price ...

До этого столкнулась с похожей задачей, но там данные находились в одной таблице, что облегчало запрос:

SELECT m.Date, m.Prod, m.Price, m.Tax, m.Discount...
FROM (SELECT MIN(Date), Prod
FROM T1 GROUP BY ProdID) AS t
INNER JOIN T1 AS m ON t.Date= m.Date AND t.Prod = m.Prod


Теперь же - никак не могу составить верный запрос... Надеюсь на Вашу помощь, спасибо!
5 дек 12, 00:36    [13578379]     Ответить | Цитировать Сообщить модератору
 Re: Проблемы с выборкой данных  [new]
Gwa
Guest
solitary,
укажите по какому полю связаны таблицы
5 дек 12, 00:56    [13578398]     Ответить | Цитировать Сообщить модератору
 Re: Проблемы с выборкой данных  [new]
solitary
Member

Откуда:
Сообщений: 16
Извиняюсь...
По полю Code. Первичный ключ таблицы A - Code, B - Code;PosID.
5 дек 12, 00:59    [13578401]     Ответить | Цитировать Сообщить модератору
 Re: Проблемы с выборкой данных  [new]
Добрый Э - Эх
Guest
solitary,

Вначале из хронологической таблицы выбираешь нужные (по дате) записи любым из перечисленных тут способов. После - джойнищь к полученному результату таблицу товаров.
5 дек 12, 04:24    [13578546]     Ответить | Цитировать Сообщить модератору
 Re: Проблемы с выборкой данных  [new]
aleks2
Guest
Добрый Э - Эх
solitary,

Вначале из хронологической таблицы выбираешь нужные (по дате) записи любым из перечисленных тут способов. После - джойнищь к полученному результату таблицу товаров.

Ты чо, издеваешься?

-- а типерь, следите за руками
select *
from
 (SELECT A.Date, B.Prod, B.Price, ROW_NUMBER() over(partition by B.Prod order by A.Date ASC) as Num
    FROM A inner join B on A.Code = B.Code
  ) X
where Num = 1
5 дек 12, 06:20    [13578608]     Ответить | Цитировать Сообщить модератору
 Re: Проблемы с выборкой данных  [new]
Добрый Э - Эх
Guest
aleks2
[Ты чо, издеваешься?
Ты уже когда-нибудь научишься вначале пробовать разные варианты, сравнивать их планы, статистику выполнения, а уж потом категорично заявлять чего бы то ни было?

Хотя да, я помню: ты же ничего никому не должен:
aleks2
Всем, кому должен, прощаю.
ЗЫ. Мне то какая нужда доказательства собирать.

Да и вообще,
aleks2
Фигня это фсе. На больших размерах данных тупо просрет временным таблицам
5 дек 12, 07:08    [13578663]     Ответить | Цитировать Сообщить модератору
 Re: Проблемы с выборкой данных  [new]
aleks2
Guest
Добрый Э - Эх
aleks2
[Ты чо, издеваешься?
Ты уже когда-нибудь научишься вначале пробовать разные варианты, сравнивать их планы, статистику выполнения, а уж потом категорично заявлять чего бы то ни было?

Хотя да, я помню: ты же ничего никому не должен:
aleks2
Всем, кому должен, прощаю.
ЗЫ. Мне то какая нужда доказательства собирать.

Да и вообще,
aleks2
Фигня это фсе. На больших размерах данных тупо просрет временным таблицам

Молодца. Способен к обучению.
5 дек 12, 08:13    [13578729]     Ответить | Цитировать Сообщить модератору
 Re: Проблемы с выборкой данных  [new]
Добрый Э - Эх
Guest
aleks2
Молодца. Способен к обучению.
в отличие от некоторых - да.
5 дек 12, 08:28    [13578785]     Ответить | Цитировать Сообщить модератору
 Re: Проблемы с выборкой данных  [new]
aleks2
Guest
Добрый Э - Эх
aleks2
Молодца. Способен к обучению.
в отличие от некоторых - да.

Ты ишо молодой - у тя фсе фпереди...
5 дек 12, 08:39    [13578821]     Ответить | Цитировать Сообщить модератору
 Re: Проблемы с выборкой данных  [new]
solitary
Member

Откуда:
Сообщений: 16
Как говорится, утро вечера мудренее и я нашла ошибку, из-за которой мой запрос не работал...
Большое Вам спасибо за Ваш ответ! Узнала кое-что новое...
6 дек 12, 01:15    [13585115]     Ответить | Цитировать Сообщить модератору
Все форумы / Microsoft SQL Server Ответить