嵌入在In子句中的SQL Server case语句

AB4U

caseIN子句中写了一条声明我收到以下错误:

子查询返回了1个以上的值。当子查询遵循=,!=,<,<=,>,> =或将子查询用作表达式时,不允许这样做。

这是代码:

declare @Consultant as bigint
set @Consultant=0

select * from tProject where 
 tProject.ID in 
( 
Case
When @Consultant=0 then (select #t1.ProjectID from #t1)
else  (select #t1.ProjectID from #t1 inner join #t2 on #t1.ProjectID=#t2.ProjectID)
end
)
马达西瓦南

尝试这个

declare @Consultant as bigint
set @Consultant=0

select * from tProject where 
( tProject.ID in (select #t1.ProjectID from #t1) and @Consultant=0)

or

(tProject.ID in 
(select #t1.ProjectID from #t1 inner join #t2 on 
#t1.ProjectID=#t2.ProjectID) and @Consultant<>0
)

或使用IF

declare @Consultant as bigint
set @Consultant=0

If @Consultant=0 then
select * from tProject where 
tProject.ID in (select #t1.ProjectID from #t1)

else

select * from tProject where 
tProject.ID in 
(select #t1.ProjectID from #t1 inner join #t2 on 
#t1.ProjectID=#t2.ProjectID) 

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

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

编辑于
0

我来说两句

0条评论
登录后参与评论

相关文章

来自分类Dev

选择where子句中的SQL Server CASE语句

来自分类Dev

SQL Server:WHERE子句中具有IN条件的CASE语句

来自分类Dev

在 SQL Server 的 WHERE 子句中使用 CASE 语句

来自分类Dev

Where 子句中的 SQL Server 条件语句

来自分类Dev

SQL Server:case语句中的昂贵查询

来自分类Dev

从 case 语句中添加行 - SQL Server

来自分类Dev

在SQL Server中使用case语句时Order by子句中的错误

来自分类Dev

SQL Server:在Where子句中使用Case语句会产生错误

来自分类Dev

为什么在MS SQL Server的Where子句中使用CASE语句

来自分类Dev

SQL语句where子句中的case语句

来自分类Dev

Sql Server 奇怪的 CASE 语句

来自分类Dev

SQL查询的WHERE子句中的CASE语句

来自分类Dev

SQL:WHERE子句中的IF / CASE语句

来自分类Dev

如何在 SQL Server 数据库的 where 子句中使用基于日期获取数据的 case 语句

来自分类Dev

SQL Server上带有IN的WHERE子句中的CASE语法

来自分类Dev

在 Case When 子句中计算 SQL SERVER 中的天数

来自分类Dev

SQL Server中的WHERE子句内的CASE语句

来自分类Dev

SQL Server中的WHERE子句内的CASE语句

来自分类Dev

在SQL Server 2008中的case语句中排除值

来自分类Dev

在 SQL Server 的 case 语句中使用 set

来自分类Dev

SQL where子句中大于或小于case语句的子句

来自分类Dev

HAVING子句中的CASE语句

来自分类Dev

CASE语句中的WHERE子句

来自分类Dev

CASE语句中的CONVERT子句

来自分类Dev

where子句中的if / case语句

来自分类Dev

SQL Server Case语句和聚合功能

来自分类Dev

SQL Server:长CASE语句的替代方法

来自分类Dev

尝试在SQL Server中使用CASE语句

来自分类Dev

SQL Server TVP与Where / Case语句合并

Related 相关文章

热门标签

归档