|
|
Регистрация | << Правила форума >> | FAQ | Пользователи | Календарь | Поиск | Сообщения за сегодня | Все разделы прочитаны |
|
Опции темы | Поиск в этой теме | Опции просмотра |
#1
|
|||
|
|||
Максимальное значение
Здравствуйте, подскажите как сделать?
У меня есть 2 таблицы, 1-сотрудники, 2-аттестация. Связь один ко многим, то есть для каждой записи из первой таблицы имеется несколько записей из второй таблицы.! Вопрос, как сформировать sql-запрос, что бы для каждой записи из первой таблицы выводиться только одна запись из второй таблицы в которой значение из определенного столбца наибольшее? Последний раз редактировалось Den-is, 22.12.2011 в 10:25. |
#2
|
||||
|
||||
Ты уже спрашивал...
Google в помощь |
#3
|
|||
|
|||
[>order by + limit<]
чёт я тупанул Последний раз редактировалось Pyro, 22.12.2011 в 11:32. |
#4
|
||||
|
||||
Цитата:
Google в помощь |
#5
|
|||
|
|||
не не, в прошлый раз было все по другому.
|
#6
|
|||
|
|||
в этот раз нужно чтоб не просто выдавало максимальное значение а именно вся строка в которой это значение
|
#7
|
|||
|
|||
если используешь "max" например max(tab2.at1) то максимальное значение выдается в отдельном столбце "expr1001" а ме нужно что бы он выводил всю строку
|
#8
|
|||
|
|||
может как то сделать запрос с под запросом?
|
#9
|
||||
|
||||
Цитата:
Код:
select tab2.* from (select tab1.nomer, max(tab2.at1) m from tab1, tab2 where tab1.nomer = tab2.nomer group by tab1.nomer) A, tab2 where A.nomer = tab2.nomer and A.m = tab2.at1 order by nomer Google в помощь |
#10
|
|||
|
|||
да главное чтоб работал!)))
а пока что то вотБезымянный.jpg |
#11
|
||||
|
||||
Цитата:
Код:
max(tab2.at1) as m Google в помощь |
#12
|
|||
|
|||
Классно! Спасибо!!!!!!!!!!!!!!!
|
#13
|
|||
|
|||
слушай ну и в завершении подскажи а что нужно дописать, что бы по мимо этого на экране показывались еще и несколько столбцов из первой таблицы: "tab1.familia" "tab1.ima" "tab1.professia" "tab1.udostoverenie" а затем то что уже есть?
|
#14
|
||||
|
||||
Дополни просто свой подзапрос в чем проблема то? Тут главное понимать что подзапрос выступает в роли самостоятельной таблицы.
Код:
select A.что-то, A.что-тоЕще, tab2.* from (select tab1.nomer, tab1.что-то, tab1.что-тоЕще, max(tab2.at1) m from tab1, tab2 where tab1.nomer = tab2.nomer group by tab1.nomer, tab1.что-то, tab1.что-тоЕще) A, tab2 where A.nomer = tab2.nomer and A.m = tab2.at1 order by nomer Google в помощь |
#15
|
|||
|
|||
хорошо спасибо
|