my Where子句中的SQL参数不返回
我有一个具有Where条件的存储过程my Where子句中的SQL参数不返回,sql,Sql,我有一个具有Where条件的存储过程 create proc TRYLANG @param1 varchar(20), @param2 varchar(20) as begin select * from [Reference].[tbl_FilterBy] where @param1 = @param2 end 但是当我执行存储过程时,它不返回任何行。救命啊!我的错误是什么?@param1=@param2??尝试: create pro
create proc TRYLANG
@param1 varchar(20),
@param2 varchar(20)
as
begin
select * from [Reference].[tbl_FilterBy]
where @param1 = @param2
end
但是当我执行存储过程时,它不返回任何行。救命啊!我的错误是什么?@param1=@param2??尝试:
create proc TRYLANG
@param1 varchar(20),
@param2 varchar(20)
as
begin
select * from [Reference].[tbl_FilterBy]
where yourcolumnName = @param1 and yourcolumnName = @param2
end
检查表有一个值。您在正确的数据库中。您想查询什么?
您正在传递两个参数并将它们一起比较 由于您无法通过参数传递列名,并且可能您正在尝试检查各种列,因此请尝试此操作
create proc TRYLANG
@param1 varchar(20)
as
begin
select * from [Reference].[tbl_FilterBy]
where Column1 = @param1
or Column2 = @param1
or Column3 = @param1 // All your possible column you need to check
end
不能使用参数指定
WHERE
子句(@param1
)中的列名。如果必须这样做,则需要使用动态SQL(假设您谈论的是SQL Server),这两个参数中有什么?确实要检查它们的相等性吗?Param1包含列名,Param2包含行中的实际值。我不这么认为。据他说,Param1包含列名,Param2包含行中的实际值。。