如何在SQL(Oracle)字段之间进行逐行比较?

时间:2015-08-13 01:24:33

标签: sql oracle select compare

以下表为例:

-------------------------
| time      | start_time|
-------------------------
|  50       | 80        |
|  20       | 72        |
|  45       | 30        |
-------------------------

我想查询返回time小于相应行中给出的start_time的所有行,此查询应返回:

-------------------------
| time      | start_time|
-------------------------
|  50       | 80        |
|  20       | 72        |
-------------------------

2 个答案:

答案 0 :(得分:1)

select *
from tablename
where time < start_time

您可以尝试这一点,假设两列都是数字。

答案 1 :(得分:1)

如果你想比较标量和集合。您可以使用&#34;任何&#34;或者&#34;所有&#34;关键词。但我不确定你是否曾经问过这个问题。 ALL, ANY and SOME Comparison Conditions in SQL

select * from temp_table where 
time < any (select start_time from temp_table)

select * from temp_table where 
time < all (select start_time from temp_table)