可能な重複作業をされていません:以下の表を考えてみ
Is there a way to make this SQL more efficient?私のSQLクエリは
を:
department
:deptid (type: INT) deptname (type: TEXT) hours (type: INT) active (type: BIT)
employee
:empid (type: INT) empname (type: TEXT) deptid (type: INT) designation (type: TEXT) salary (type: INT)
は、列empname
と4以上のヘッド数を持っているそれらの部門に所属する従業員のdeptname
を返すようにクエリを記述します。レコードは、アルファベット順にempname
の順に返されます。
私の解決策は次のとおりです。
SELECT e.empname,d.deptname
FROM employee e,department d
WHERE e.deptid=d.deptid
AND d.deptid
IN
(
SELECT deptid
FROM employee
GROUP BY deptid
HAVING COUNT(*)>=4
)
ORDER BY e.empname;
あなたの質問が正しいようです。 – danihp
宿題のような音: –
これはおそらく宿題です。私は[このリンク](http://www.sqlservercentral.com/Forums/Topic1127784-391-1.aspx)とまったく同じ質問を見つけました。 – Rob