Warning: file_get_contents(/data/phpspider/zhask/data//catemap/5/sql/69.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
SQL 2008案例在何处_Sql_Sql Server - Fatal编程技术网

SQL 2008案例在何处

SQL 2008案例在何处,sql,sql-server,Sql,Sql Server,我正在使用SQL 2008 server 我有一个表(比如Salemen),其中一列是销售人员的状态(列是xStatus) xStatus为null,或“I”表示不活动,或“D”表示将来删除 需要一个查询,用户可以指定查看所有销售人员、所有状态或仅查看活动销售人员 我在Where子句中的存储过程查询中遇到问题 变量被传递给查询(@Action),指定在何处查看所有状态(@Action=1)或仅查看活动销售人员(@Action=2) 伪码 Select * From Salesmen Where

我正在使用SQL 2008 server

我有一个表(比如Salemen),其中一列是销售人员的状态(列是xStatus)

xStatus为null,或“I”表示不活动,或“D”表示将来删除

需要一个查询,用户可以指定查看所有销售人员、所有状态或仅查看活动销售人员

我在Where子句中的存储过程查询中遇到问题

变量被传递给查询(
@Action
),指定在何处查看所有状态(
@Action=1
)或仅查看活动销售人员(
@Action=2

伪码

Select *
From Salesmen
Where
If @Action = 1
select regardless of status
If @Action = 2
only select when xStatus is null

可以通过以下方式使用
完成:

SELECT * 
FROM SalesMen
WHERE (@Action = 1)
OR (@Action = 2 AND xStatus IS NULL)

可以通过以下方式使用
完成:

SELECT * 
FROM SalesMen
WHERE (@Action = 1)
OR (@Action = 2 AND xStatus IS NULL)

谢谢,没错。我想得太多了,或者根本没想。谢谢,这是正确的。我想得太多了,或者根本没有思考。