Главная страница
Top.Mail.Ru    Яндекс.Метрика
Текущий архив: 2004.04.11;
Скачать: CL | DM;

Вниз

Помогите с запросом, пожалуйста.   Найти похожие ветки 

 
chtr ©   (2004-03-15 07:10) [0]

Надо выбрать из повторяющихся номенклатур цену по максимальной дате. Т.е.

из

id | code | date | price
------------------------
1 | 12   | 1/01 | 250
2 | 13   | 1/01 | 800
3 | 12   | 1/02 | 253
4 | 13   | 1/02 | 795

надо получить

id | code | date | price
------------------------
3 | 12   | 1/02 | 253
4 | 13   | 1/02 | 795

Мне кажется кто-то уже такое должен был делать. Просто катастрофически нехватает времени, помогите пожалуйста.
Спасибо.


 
YurikGl ©   (2004-03-15 08:06) [1]

where id>2 ?


 
ЮЮ ©   (2004-03-15 08:39) [2]

SELECT tbl.*
FROM
 (SELECT Code, MAX(date) MaxDate FROM Table GROUP By Code) gr
 LEFT JOIN Table tbl ON (gr.Code = tbl.CODE) AND (gr.MaxDate = tbl.Date)

если же предположить, что большему ID большая дата (т.е. данные вводятся последовательно), то можно

SELECT tbl.*
FROM
 (SELECT Code, MAX(ID) MaxId FROM Table GROUP By Code) gr
 LEFT JOIN Table tbl ON (gr.MaxId = tbl.Id)


 
CHTR ©   (2004-03-15 09:04) [3]

2 ЮЮ , спасибо огромное, сэкономил кучу времени. У меня так сходу пока не получается. Первый вариант подойдет.


 
Johnmen ©   (2004-03-15 11:49) [4]

Думается, что так будет быстрее:

SELECT *
FROM Table T1
WHERE T1.date=(SELECT MAX(T2.date)
               FROM Table T2
               WHERE T1.code=T2.code)



Страницы: 1 вся ветка

Текущий архив: 2004.04.11;
Скачать: CL | DM;

Наверх




Память: 0.47 MB
Время: 0.031 c
14-1079332005
False_Delirium
2004-03-15 09:26
2004.04.11
Актуальная шутка.


14-1079693529
Abros
2004-03-19 13:52
2004.04.11
Чем выше температура проца или видухи те больше косяков в играх?


3-1079423613
Лысый
2004-03-16 10:53
2004.04.11
SQL


1-1082371681
[BAD]Angel
2004-04-19 14:48
2004.04.11
PageControl


14-1079361426
NoOne
2004-03-15 17:37
2004.04.11
Компакт не читается....