gpt4 book ai didi

sql-server - 有关 SQL SERVER 存储过程中 IF 的帮助

转载 作者:行者123 更新时间:2023-12-02 20:23:20 30 4
gpt4 key购买 nike

任何人都可以帮助我在 sql server 的存储过程中构造 IF。

基本上我有一个简单的存储过程,但我现在需要传递一个新的输入参数,根据它是否为 true,我传递值 D,如果为 false,我传递值 A。但更改是在中间子查询..让我解释一下...这是存储过程。基本上,如果我为 ReturnOldStatus 发送 True,我会执行子查询 ItemStatus='D',如果它为 false,则我传入 ItemStatus='A'

CREATE PROCEDURE [dbo].[MyTempStoredProc]
(
@IdOffice Int,
@ReturnOldStatus bit
)
AS
BEGIN
SET NOCOUNT ON;
SELECT * FROM Offices

WHERE
IdOffice = @IdOffice

AND (V.OffType NOT IN (
SELECT * FROM MiscOff
WHERE
ItemStatus= 'D') // This needs to be ItemStatus ='A' if FALSE is passed in on the input param

有什么想法吗?

谢谢

最佳答案

我会这样解决:

    declare @itemStatus varchar(1);
if (@inputParam = 'FALSE')
begin
set @itemStatus = 'A'
end
else
set @itemStatus = 'D'

SELECT * FROM Offices
WHERE
IdOffice = @IdOffice
AND (V.OffType NOT IN (
SELECT * FROM MiscOff
WHERE ItemStatus= @itemStatus)
)

T-Sql 不是我的母语,因此其中可能存在错误...

关于sql-server - 有关 SQL SERVER 存储过程中 IF 的帮助,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/845791/

30 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com