|
Как выбрать из таблицы максимальную строку |
☑ |
0
Лкфае гтв Дшсре
01.09.14
✎
10:17
|
Есть таблица:
НомерСтр Номенклатура Дата Количество
1 | Номенклатура1 | 25.04.2013 | 100
2 | Номенклатура1 | 26.04.2013 | 200
3 | Номенклатура1 | 27.04.2013 | 300
4 | Номенклатура1 | 28.04.2013 | 400
5 | Номенклатура2 | 19.04.2013 | 5500
6 | Номенклатура2 | 20.04.2013 | 7800
7 | Номенклатура2 | 27.04.2013 | 8000
8 | Номенклатура2 | 28.04.2013 | 8200
Как запросом выбрать из этой таблицы строки с максимальным количеством в разрезе номенклатуры, т. е. строки 4 и 8.
Результат должен получиться такой:
4 | Номенклатура1 | 28.04.2013 | 400
8 | Номенклатура2 | 28.04.2013 | 8200
Подскажите пожалуйста, уже 2 дня сижу туплю. Мозги уже совсем усохли видимо(
|
|
1
Лкфае гтв Дшсре
01.09.14
✎
10:19
|
Проблема в том, чтобы и дата тоже оставалась в результате
|
|
2
IamAlexy
01.09.14
✎
10:19
|
отсортировать по дате количеству и выбрать первые нужные ?
|
|
3
Поpyчик-4
01.09.14
✎
10:19
|
(0) ИТОГИ ПО
МАКСИМУМ(
Это намёк
|
|
4
Лодырь
01.09.14
✎
10:20
|
вычисляешь максимумы по номенклатуре и соединяешь снова с исходной таблицей чтоб получить дату.
|
|
5
MaXpaT
01.09.14
✎
10:20
|
попробуй соединять таблицу саму с собой по номенклатура=Номенклатура и Количество>Количество
|
|
6
mzelensky
01.09.14
✎
10:20
|
(0) Делаешь подзапрос. Тамгруппируешь по номенклатуре и берешь максимум по количество. Потом этот Подзапрос соединяешь внутренним соединением с основной таблицей по номенклатуре и количеству..
|
|
7
Full_Metal
01.09.14
✎
10:22
|
(2) +1, но лучше наверное будет по дате сортировать.
|
|
8
pessok
01.09.14
✎
10:24
|
да сгруппируй по номенклатуре и максимум(количество), даже итоги не надо
|
|
9
pessok
01.09.14
✎
10:24
|
и отдельной таблицей максимум(дата)
|
|
10
Лкфае гтв Дшсре
01.09.14
✎
10:30
|
Спасибо всем, пнули в нужную сторону) Вариант mzelensky (6) лучше всего подходит на мой взгляд, единственная проблема, я не написал, может быть две строки с одинаковым количеством. Но это уже сам как-нибудь доделаю. Вариант Махрата (5) не подойдет, там дата теряется.
|
|
11
Зойч
01.09.14
✎
10:46
|
|
|
Чтобы обнаруживать ошибки, программист должен иметь ум, которому доставляет удовольствие находить изъяны там, где, казалось, царят красота и совершенство. Фредерик Брукс-младший