SQL Server:如何使用if else语句从同一表中选择不同的数据

用户名

我正在使用以下存储过程从到目前为止可以正常工作的表中选择数据。

现在,我想创建两种不同的情况,而不需要重复整个查询:如果输入@selection =“ active”,则选择不等于statusX =“ Published”的所有内容,否则请选择所有与statusX =“ Published”相等的内容。

谁能告诉我如何在这里实现?

我的存储过程(减少的列):

ALTER PROCEDURE [dbo].[FetchRequests]
    @selection nvarchar(20)
AS
BEGIN
    SET NOCOUNT ON;
    SELECT      col1,
                col2,
                col3,
                col4,
                col5,
                statusX,
                logStatus,
                logID
    FROM        LogRequests
    WHERE       logStatus = 'active'
    ORDER BY    logID desc
    FOR XML PATH('cols'), ELEMENTS, TYPE, ROOT('ranks')

END

蒂姆,非常感谢您对此提供的任何帮助。

乔纳森

您可以只使用条件WHERE子句:

ALTER PROCEDURE [dbo].[FetchRequests]
    @selection nvarchar(20)
AS
BEGIN
    SET NOCOUNT ON;
    SELECT      col1,
                col2,
                col3,
                col4,
                col5,
                statusX,
                logStatus,
                logID
    FROM        LogRequests
    WHERE       logStatus = 'active'
    AND ((statusX <> 'Published' AND @selection = 'active')
    OR (statusX = 'Published' AND @selection <> 'active'))
    ORDER BY    logID desc
    FOR XML PATH('cols'), ELEMENTS, TYPE, ROOT('ranks')

END

本文收集自互联网,转载请注明来源。

如有侵权,请联系[email protected] 删除。

编辑于
0

我来说两句

0条评论
登录后参与评论

相关文章

来自分类Dev

为什么删除语句到表,将选择语句锁定到同一表-SQL Server

来自分类Dev

SQL Server - 如何从不同的行但在同一个表中选择值

来自分类Dev

不同数据库上同一表之间的SQL Server差异

来自分类Dev

SQL使用一个表中的行数据从另一表中的特定列中选择数据

来自分类Dev

如何使用if语句从同一表中选择和合并值

来自分类Dev

SQl查询同一表中不同条件的多个选择语句

来自分类Dev

从同一表中选择特定的SQL

来自分类Dev

SQL Multiple从同一表中选择

来自分类Dev

SQL:从同一表中选择列

来自分类Dev

如何从表中选择具有同一表属性唯一值的记录?请回答有关oracle sql plus的问题

来自分类Dev

如何从联接到同一表的数据表中选择?

来自分类Dev

如何从表中选择复杂数据并将其从同一表中删除

来自分类Dev

如何从联接到同一表的数据表中选择?

来自分类Dev

在SQL Server中使用同一表在一个表中合并两个不同的行

来自分类Dev

如何使用PHP从SQL获取同一表中具有列名的数据?

来自分类Dev

如何基于[ParentId]从同一表中选择[ParentName]

来自分类Dev

将数据从SQL Server表复制到同一表

来自分类Dev

SQL Server:将行复制并插入到同一表中,但具有不同的ID

来自分类Dev

SQL Server:将行复制并插入到同一表中,但具有不同的ID

来自分类Dev

选择同一表关系中的所有父级或子级SQL Server

来自分类Dev

选择同一表关系中的所有父级或子级SQL Server

来自分类Dev

SQL Server:选择并添加到同一表的新列

来自分类Dev

如何使用SQL Server从两个引用同一表的键中联接一个表?

来自分类Dev

SQL Server-从同一表中的数据更新列

来自分类Dev

在同一表中查询MS SQL Server中的数据库列表

来自分类Dev

在SQL Server 2008中使用一个不同的值从表中选择全部

来自分类Dev

如何使用具有良好性能的不同过程访问同一表-SQL 2008

来自分类Dev

PL SQL xmlelement:如何从同一表上的互斥条件获取xml中的数据

来自分类Dev

如何在SQL中更新同一表中的数据?

Related 相关文章

  1. 1

    为什么删除语句到表,将选择语句锁定到同一表-SQL Server

  2. 2

    SQL Server - 如何从不同的行但在同一个表中选择值

  3. 3

    不同数据库上同一表之间的SQL Server差异

  4. 4

    SQL使用一个表中的行数据从另一表中的特定列中选择数据

  5. 5

    如何使用if语句从同一表中选择和合并值

  6. 6

    SQl查询同一表中不同条件的多个选择语句

  7. 7

    从同一表中选择特定的SQL

  8. 8

    SQL Multiple从同一表中选择

  9. 9

    SQL:从同一表中选择列

  10. 10

    如何从表中选择具有同一表属性唯一值的记录?请回答有关oracle sql plus的问题

  11. 11

    如何从联接到同一表的数据表中选择?

  12. 12

    如何从表中选择复杂数据并将其从同一表中删除

  13. 13

    如何从联接到同一表的数据表中选择?

  14. 14

    在SQL Server中使用同一表在一个表中合并两个不同的行

  15. 15

    如何使用PHP从SQL获取同一表中具有列名的数据?

  16. 16

    如何基于[ParentId]从同一表中选择[ParentName]

  17. 17

    将数据从SQL Server表复制到同一表

  18. 18

    SQL Server:将行复制并插入到同一表中,但具有不同的ID

  19. 19

    SQL Server:将行复制并插入到同一表中,但具有不同的ID

  20. 20

    选择同一表关系中的所有父级或子级SQL Server

  21. 21

    选择同一表关系中的所有父级或子级SQL Server

  22. 22

    SQL Server:选择并添加到同一表的新列

  23. 23

    如何使用SQL Server从两个引用同一表的键中联接一个表?

  24. 24

    SQL Server-从同一表中的数据更新列

  25. 25

    在同一表中查询MS SQL Server中的数据库列表

  26. 26

    在SQL Server 2008中使用一个不同的值从表中选择全部

  27. 27

    如何使用具有良好性能的不同过程访问同一表-SQL 2008

  28. 28

    PL SQL xmlelement:如何从同一表上的互斥条件获取xml中的数据

  29. 29

    如何在SQL中更新同一表中的数据?

热门标签

归档