AbdulMujeeb2011 Ответов: 1

Мне нравится вставлять общее количество врачей в отдел, получая значение из таблицы doctor


Мне нравится вставлять общее количество врачей в отдел, получая значение из таблицы doctor.

Что я уже пробовал:

Вставить в отдел (Total_Doctor)
значения (( выбрать количество(*) из отдела ДЭП, доктор ...
Где Dep.De_ID = Do.De_ID
Группы по отд.Название
));
Ошибка:
Подзапрос вернул более 1 значения.
Это не является предварительным условием, когда подзапрос следует=,!=, < <=, >, >= или когда подзапрос используется в качестве выражения

1 Ответов

Рейтинг:
12

OriginalGriff

Ваш внутренний запрос:

Select Count(*) from department Dep, Doctor do
Where Dep.De_ID = Do.De_ID
Group by Dep.Name
Возвращает более одной строки, потому что это запрос GROUP BY, и именно это он и должен делать!

Но внешний запрос ожидает только одно значение, поэтому вы получаете ошибку.
Посмотрите на использование Вставить в инструкцию SELECT[^] вместо.