Ошибка в sql-запросе

81
8

Я пишу запрос в sql и получаю сообщение об ошибке:


Invalid use of group function

Что это значит?
В моем запросе предложение where приведено ниже:


select c.name,s.contact,s.number
from list c , senior s
where c.id = s.id AND c.name = 'Abg' AND c.state ='qw' AND MIN(c.dob);

В принципе, у меня есть 2 файла, и мне нужно найти младшего клиента из второго файла, а затем получить его данные из первого файла. У меня есть идентификатор клиентов во втором файле. Сначала я проверяю идентификаторы с идентификатором первого файла. И проверьте его состояние и имя. И тогда мне нужно найти молодых среди этих клиентов. Почему мне нужна функция MIn.

спросил(а) 2010-10-11T09:40:00+04:00 10 лет назад
1
Решение
122

Вам нужно использовать подзапрос:

 select c.name,s.contact,s.number
from from list c, senior s
inner join
(
select MIN(c.dob) minDob
,c.id
from list c
where c.id = s.id AND c.name = 'Abg' AND c.state ='qw'
group by c.id
) sq
on c.dob = sq.minDob
and c.id = sq.id

ответил(а) 2010-10-11T09:52:00+04:00 10 лет назад
41

AND MIN(c.dob); вызывает ошибку.


Я думаю, вы должны использовать что-то вроде:

c.dob = (select MIN(dob) from c);

ответил(а) 2010-10-11T09:51:00+04:00 10 лет назад
Ваш ответ
Введите минимум 50 символов
Чтобы , пожалуйста,
Выберите тему жалобы:

Другая проблема