我有以下表格结构。根据什么类型的请求,我应该能够选择正确的列来匹配值。
| resource_id | result | request |
| | 15127 | /campaign/add |
| 15127 | | /campaign/modify |
例如:
如果请求与/campaign/add
类似,则应将结果与用户发送的数字进行比较,否则应选择resource_id。
以编程方式我可以说
if(request.equals())
fetch values from database where resource_id = 15127
else
fetch values from database where resource_id = 15127
现在我需要使用数据库做同样的事情。
答案 0 :(得分:4)
您可以使用CASE
表达式来执行此操作:
select *
from the_table
where case
when request = '/campaign/add' then result
when request = '/campaign/modify' then resource_id
end = number_sent_by_the_user