我希望比较表格中 Col2 的比较值的3列值。
Col1 Col2 Col3
12 < 25 TRUE
25 > 20 TRUE
15 = 25 FALSE
SELECT (case when Col2 = '<' then Col1 < Col3 else Col1 end)
任何人都可以帮助我吗? 高级谢谢。
答案 0 :(得分:2)
您可以尝试使用case
,如下所示:
case
when Col2 = '<' then
Col1 < Col3
when Col2 = '>' then
Col1 > Col3
when Col2 = '=' then
Col1 = Col3
end case
查询可以是
select case
when col2 = '=' then
case when (col1 = col3) then 1 else 0 end
when col2 = '>' then
case when (col1 > col3) then 1 else 0 end
when col2 = '<' then
case when (col1 < col3) then 1 else 0 end
else
0
end
from MyTable
另一种可能是
(Col2 = '<' and (Col1 < Col3)) or
(Col2 = '>' and (Col1 > Col3)) or
(Col2 = '=' and (Col1 = Col3))