我有一個像自加入到表
Employee
==================
name salary
==================
a 10000
b 20000
c 5000
d 40000
我想所有其薪水比的薪水高的僱員表。 我不想使用任何嵌套或子查詢。 接受採訪時提問,提示是使用自我加入。我真的無法弄清楚如何達到同樣的效果。
我有一個像自加入到表
Employee
==================
name salary
==================
a 10000
b 20000
c 5000
d 40000
我想所有其薪水比的薪水高的僱員表。 我不想使用任何嵌套或子查詢。 接受採訪時提問,提示是使用自我加入。我真的無法弄清楚如何達到同樣的效果。
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
SELECT emp1.* FROM Employee emp1 JOIN Employee emp2
ON emp2.Name = 'A' and emp1.Salary > emp2.Salary
這將起作用。只有修改將mysql是區分大小寫的,所以emp2.Name ='A'應該是emp2.Name ='a' – Salil 2010-06-14 05:52:43
+1的老同學。 Bah,誰需要'join'關鍵字? :-) – paxdiablo 2010-06-14 05:49:02
非常感謝... 我在想一個複雜的方式... – Mohit 2010-06-14 07:09:24
非常感謝。以簡單的方式解釋 – qasimzee 2011-08-09 07:03:32