5

私は次のようなテーブルを持っています

Employee
==================
name      salary
==================
a        10000
b        20000
c        5000
d        40000

給与がAの給与よりも高いすべての従業員を取得したい. ネストされたクエリまたはサブクエリを使用したくありません。インタビューで尋ねられ、ヒントは自己結合を使用することでした。同じことを達成する方法が本当にわかりません。

4

2 に答える 2

16
select e1.* from Employee e1, Employee e2  where 
           e2.name = 'a' and
           e1.salary > e2.salary

自己結合の使用

 select e1.* from Employee e1 join Employee e2  on 
           e2.name = 'a' and
           e1.salary > e2.salary
于 2010-06-14T05:37:56.343 に答える
1
SELECT emp1.* FROM Employee emp1 JOIN Employee emp2
ON emp2.Name = 'A' and emp1.Salary > emp2.Salary
于 2010-06-14T05:41:26.357 に答える