我需要有关T-SQL的帮助.我的SQL Server中有一个存储过程,带有查询(示例),如下所示:
select mpid, empname, sal, phone, [e-mail]
from emp
where empid = @empid or empname = @empname or sal = @sal or phone = @phone
Run Code Online (Sandbox Code Playgroud)
在上面的示例查询中,我的where子句中有四个条件.当我运行查询时,如果任何条件与输入变量匹配,我会得到结果(例如:@ empid,@ empname等).
我现在的要求是确定哪些条件与输入数据匹配.我只需要知道第一个与输入值匹配的条件.
您可以使用以下CASE
语句中的声明执行此操作SELECT
:
Select empid,
empname,
sal,
phone,
[e-mail],
Case
When empid = @empid Then 'EmpId'
When empname = @empname Then 'EmpName'
When sal = @sal Then 'Sal'
When phone = @phone Then 'Phone'
End As MatchingColumn
From emp
Where empid = @empid
Or empname = @empname
Or sal = @sal
Or phone = @phone
Run Code Online (Sandbox Code Playgroud)
归档时间: |
|
查看次数: |
171 次 |
最近记录: |