我有一个用户定义的函数,我想做一个选择并根据它是否比另一个大或小来选择一个列。
例如:
Select
t.A, t.B
From
Table t
Where
if(t.A <= t.B) then
use t.A
else
use t.B
这可能吗?提前致谢!
我有一个用户定义的函数,我想做一个选择并根据它是否比另一个大或小来选择一个列。
例如:
Select
t.A, t.B
From
Table t
Where
if(t.A <= t.B) then
use t.A
else
use t.B
这可能吗?提前致谢!
好像你想要
SELECT
CASE
WHEN t.A <= t.B
THEN t.A
ELSE t.B
END AS Smaller
FROM Table t
不!但是你可以使用一个case
语句
Select
t.A, t.B
From
Table t
Where
(case when t.A <= t.B then t.A ELSE t.B END) = SomeValue
或者如果只有在 select 语句中需要较小的列
Select
(case when t.A <= t.B then t.A ELSE t.B END) as column
From
Table t
注意 我以前没有使用过普遍的 sql,但是快速的 googlez 显示 case 语句是在 9.x 版本中添加的?
你真的想要吗?
SELECT MIN(t.A, t.B) AS SmallestAOrB FROM Table t