Я новичок в SQL и у меня есть домашнее задание. Я сделал все вопросы правильно, но все еще не смог разобраться в этих двух запросах, поэтому, пожалуйста, помогите, если сможете. Я ценю вас заранее.Как решить эти два запроса?
У меня есть четыре таблицы:
EMPLOYEE which conatin the attributes (Fname, Minit, Lname, Ssn, Bdate, Address, Sex, Salary, Super_ssn, Dno)
Table DEPARTMENT have the columns (Dname, Dnumber, Mgr_ssn, Mgr_start_date)
Table PROJECT have the columns (Pname, Pnumber, Plocation, Dnum)
Table DEPENDENT (Essn, Dependent_name, Sex, Bdate, Relationship)
Q1. Для отдела, который контролирует большинство проектов, укажите его имя? я придумал этот запрос, но все это только дает мне каждый отдел сколько проектов это контролировать, но не может заставить его работать, как дать мне только тот, который имеет наиболее :(
SELECT Dname, COUNT(distinct Pnumber) as NumberOfProjects
FROM Department, Project
WHERE Dnum = Dnumber
GROUP BY Dname;
Q2. Восстановите имена и Ssn работника, которые имеют более иждивенцев, чем любые другие сотрудники?
Я придумал это, но ИДК, почему он не работает. Я продолжаю получать сообщение об ошибке
SELECT Fname, Lname, Ssn
FROM Employee
WHERE max((SELECT COUNT(*)
FROM Dependent
WHERE Ssn = Essn));
BTW Я использую MySQL Workbench 5.2. Язык только SQL разрешен
@ Rahul Tripathi Большое вам спасибо за редактирование :) –
Вы отметили свой вопрос тремя различными системами СУБД. Какой из них вы используете? –