2012-02-09 87 views
0

我想比較表中的兩行。檢索記錄其中某年線2的值小於同年1號線值:比較SQL中的兩行

Year Line Dollar 
2001 1   $50 
2001 2   $50 

2002 1   $100 
2002 2   $100 

2003 1   $150 
2003 2   $100 

結果是

Year Line Dollar 
2003 1   $150 
2003 2   $100 

感謝

+1

歡迎StackOverflow上。你迄今爲止嘗試過哪些方法不適合你? – 2012-02-09 17:04:41

+1

你說你的結果是2003 1 $ 150 2003 2 $ 100。這一行中的哪個字段低於2002行? – 2012-02-09 17:05:43

+0

不知道我明白,但也許這會有所幫助︰'SELECT a1。* FROM myTable a1 INNER JOIN myTable a2 WHERE a1.Year = a2.Year AND a1.Line Diego 2012-02-09 17:06:22

回答

2
select a.*, b.* 
from yourtable a, yourtable b 
where a.year = b.year 
and a.line = 1 
and b.line = 2 
and a.dollar > b.dollar 
+0

感謝您的快速回復。所有數據都位於同一個表中。 – Jinru 2012-02-09 19:06:48

+0

嗨Jinru - 在上面的例子中,它*是*同一個表。 「yourtable」別名兩次,別名「a」代表所有'行1'條目,別名「b」代表所有'行2'條目。希望有所幫助! – bob 2012-02-09 20:14:29