Oracle sql dev, отображение заданий с более чем 10 пользователями, групповая функция - PullRequest
0 голосов
/ 22 мая 2019

В настоящее время для моей базы данных я ищу работу, в которой есть как минимум 10 заинтересованных пользователей. Я хочу, чтобы он отображал jobNum, название и общее количество заинтересованных пользователей. У меня проблема с групповой функцией и я понимаю, как проверить 10 пользователей.

(PK) = Primary Key
(FK) = Foreign Key

Схема базы данных выглядит следующим образом:

Building(buildingNum(PK), Description, instname, buildName, state, postcode)
User(UNum(PK), buildingNum(FK), Surname, FirstName, initials, title)
File(FileNum(PK), title)
UserAccount(FileNum(PK)(FK), UNum(PK)(FK))
Job(JobNum(PK), id, title)
Interest(JobNum(PK)(FK), UNum(PK)(FK), Description)

До сих пор я пробовал следующий блок кода:

select J.JobNum, J.title, count(I.UNum)
from Job J join Interest I
where I.JobNum = J.JobNum and count(I.UNum) > 10
group by J.JobNum, J.title;

Мне было интересно, если кто-нибудь знает, почему не работает групповая функция и как я должен проверять, сколько пользователей заинтересовано в работе? Спасибо всем, кто может помочь.

1 Ответ

1 голос
/ 22 мая 2019

Переместить условие count() в предложение HAVING.JOIN хочет условие ON для условий объединения, а не предложение WHERE.

select J.JobNum, J.title, count(I.UNum)
from Job J join Interest I
    ON I.JobNum = J.JobNum 
group by J.JobNum, J.title
having count(I.UNum) > 10
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...