|
#1
|
|||
|
|||
Запрос
Всем привет, подскажите как правильно написать?
Вот такой запос: Код:
select * from tab1, tab2 where (tab1.nomer = tab2.nomer) and (at1 = (select max(at1) from tab2))' Код:
select * from tab1, tab2 where (tab1.nomer = 1) and (tab1.nomer = tab2.nomer) and (at1 = (select max(at1) from tab2))' но вместо того что бы вывести максимсальное значение at1 для tab1.nomer = 1 он ни выводит ничего, так как максимальное значение at1 содержит запись не tab1.nomer = 1 как правильно нужно задать условие? |
#2
|
||||
|
||||
Код:
select tab1.nomer, max(tab2.at1) from tab1, tab2 where tab1.nomer = tab2.nomer group by tab1.nomer Google в помощь |
#3
|
|||
|
|||
Огромное спасибо что в очередной раз выручил!
ща попробую...... |
#4
|
|||
|
|||
Все работает!)))
|
#5
|
|||
|
|||
дополнительно
Слушай, а если вот так нужно:
1.- вот тут все понятно, работает. Код:
select sotrudniki.familia, sotrudniki.ima, sotrudniki.otchestvo, max(attestacia_itr.at1), max(attestacia_itr.at2), max(attestacia_itr.at3) from sotrudniki, attestacia_itr where sotrudniki.tabel = attestacia_itr.tabel group by sotrudniki.familia, sotrudniki.ima, sotrudniki.otchestvo 2.- но стоит мне добавить еще одно поле "примечание" в конце, то не работает, выдается сообщение что это поле не может быть найдено Код:
select sotrudniki.familia, sotrudniki.ima, sotrudniki.otchestvo, max(attestacia_itr.at1), max(attestacia_itr.at2), max(attestacia_itr.at3), attestacia_itr.primechanie from sotrudniki, attestacia_itr where sotrudniki.tabel = attestacia_itr.tabel group by sotrudniki.familia, sotrudniki.ima, sotrudniki.otchestvo, attestacia_it.primechanie |
#6
|
||||
|
||||
Ну конечно же оно не может быть найдено
Код:
select sotrudniki.familia, sotrudniki.ima, sotrudniki.otchestvo, max(attestacia_itr.at1), max(attestacia_itr.at2), max(attestacia_itr.at3), attestacia_itr.primechanie from sotrudniki, attestacia_itr where sotrudniki.tabel = attestacia_itr.tabel group by sotrudniki.familia, sotrudniki.ima, sotrudniki.otchestvo, attestacia_itR.primechanie А вообще совет используй следующий прием: Код:
select s.familia, s.ima, s.otchestvo, max(a.at1), max(a.at2), max(a.at3), a.primechanie from sotrudniki s, attestacia_itr a where s.tabel = a.tabel group by s.familia, s.ima, s.otchestvo, a.primechanie Google в помощь |
#7
|
|||
|
|||
а ну да, это моя невнимательность)))
но потом я правильно написал и все равно! есть небольшаяч особенность, для отображения текущей записи мне пришлось создать одно вычисляемое поле "nomer" и как полагается в делфи, что бы все они отображались мне пришлось и все другие поля сразу указывать в adoquery и dbgrigeh. Так вот может в этом вся загвоздка? |
#8
|
||||
|
||||
Цитата:
Google в помощь |
#9
|
|||
|
|||
все правильно, я его создал, точнее говоря добавил из таблицы и ве ровно!
|
#10
|
||||
|
||||
Цитата:
Google в помощь Последний раз редактировалось Ildar-tsr, 21.12.2011 в 08:33. |
#11
|
|||
|
|||
все причина найдена!!!!
дело было в названии этого примечания, огромное спасибо за помощь! |