2016-09-11 5 views
0

次のクエリの説明があります。それをSQLで表現する方法は?SQLでANYコマンドを使用する方法

クエリ - >リストのすべての従業員の最初の名前は、そのような彼らのemp_pctはそのproj_numで18従業員のいずれよりも小さいこと(ANYを使用してください)。

私は以下のテーブル名EMP_2を持っています。

Name       Type 
----------------------------------- 
EMP_NUM      CHAR(3) 
EMP_LNAME      CHAR(15) 
EMP_FNAME      CHAR(15) 
EMP_INITIAL     CHAR(1) 
EMP_HIREDATE     DATE 
JOB_CODE      CHAR(3) 
EMP_PCT      NUMBER(5,2) 
PROJ_NUM      CHAR(3) 

答えて

3

ここに移動します。 ANYキーワードは、サブクエリで一致する行を見つけた瞬間を比較し短絡します。

SELECT a.EMP_FNAME 
FROM EMP_2 a 
WHERE a.EMP_PCT < ANY (
    select EMP_PCT 
    from EMP_2 
    where EMP_NUM <> a.EMP_NUM and PROJ_NUM = 18); 
+0

「ANY」の詳細については、[この質問](http://stackoverflow.com/q/5980474/642706)を参照してください。そして[MySQL doc](http://dev.mysql.com/doc/refman/5.7/en/any-in-some-subqueries.html)を見てください。 –

関連する問題