gpt4 book ai didi

SQL Server - 有条件的外部应用

转载 作者:行者123 更新时间:2023-12-04 20:59:51 25 4
gpt4 key购买 nike

在 SQL Server 2008 中有没有办法做类似下面的事情?

可以根据条件指定外部应用(连接)表吗?

declare @bGetExtendedInfo bit
set @bGetExtendedInfo = 1

declare @param nvarchar(24)
set @param = 'CO-02-BBB'

select t1.*, t2.ID
from t1
outer apply (
case when @bGetExtendedInfo= 0
then (select 0) as ID /* dummy value */
/*really expensive query trying to avoid when extended info is not needed*/
else (select top 1 ID from tbl1 where tbl1.code = @param)
end
) t2

最佳答案

试试这个,

DECLARE @bCond BIT
SET @bCond = 1

SELECT t1.*, t2.*
FROM t1 OUTER APPLY
(
SELECT TOP 1 *
FROM
(
SELECT *, 'a' src FROM tb10
UNION ALL
SELECT *, 'b' src FROM tb11
)s
WHERE src = CASE WHEN @bCond = 0 THEN 'a' ELSE 'b' END
) t2

关于SQL Server - 有条件的外部应用,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/14687840/

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