Oracle 中的决策语句
Decision Making Statements in Oracle
我有一个条件,显示的记录取决于用户提供的值。
select calc_lvl1, calc_lvl2, calc_lvl3
from my_table
where comment=:user_value;
评论栏中的可能值为 'NEW'
、'ACCEPTED'
和 'REJECTED'
。并且将来此列中也可能有新值,并且此查询将来也应该有效,而不管评论列中存在的不同值的数量如何。
我的要求是,如果用户不提供任何值,则应显示所有 'NEW'
记录,如果用户输入值 'Y'
,则应显示除 'NEW'
以外的所有其他记录被显示。
有什么办法可以实现吗?
select calc_lvl1, calc_lvl2, calc_lvl3
from my_table
where comment = user_value
or (user_value is null and comment = 'NEW')
or (user_value = 'Y' and comment <> 'NEW')
我有一个条件,显示的记录取决于用户提供的值。
select calc_lvl1, calc_lvl2, calc_lvl3
from my_table
where comment=:user_value;
评论栏中的可能值为 'NEW'
、'ACCEPTED'
和 'REJECTED'
。并且将来此列中也可能有新值,并且此查询将来也应该有效,而不管评论列中存在的不同值的数量如何。
我的要求是,如果用户不提供任何值,则应显示所有 'NEW'
记录,如果用户输入值 'Y'
,则应显示除 'NEW'
以外的所有其他记录被显示。
有什么办法可以实现吗?
select calc_lvl1, calc_lvl2, calc_lvl3
from my_table
where comment = user_value
or (user_value is null and comment = 'NEW')
or (user_value = 'Y' and comment <> 'NEW')