Sql Server 存储过程,怎样把传入的字符串作为where条件?字符串传什么样,where后就是什么样。如下:
ALTER PROCEDURE [dbo].[Standard_GetBySomeCCS]
@str VARCHAR(100)
AS
BEGIN
SELECT
Id,
Foreword,
ApplyArea,
Format,
PageCount,
CCS
FROM Standard
WHERE XXXXXXXXXXXXXXXXXXX
就是where后面怎么写?
我在代码里调这个存储过程的时候,会把str传进来,我想让这个str整体作为where的查询条件,请问怎么写?
在线等。。。。
例子就是比如我会传一个 str = "CCS = 'C15' OR CCS = 'C12' OR CCS = 'C13' "
我想让这整个str作为查询条件。
而且我的str每次传的还不一样,是动态的。
SQL 拼接字符串
把传入的字符串参数 作为where 后面的条件
如下列SQL:
create PROCEDURE [dbo].[Test]
@T nvarchar(50)=''--传入字符串参数
AS
BEGIN
declare @SQL nvarchar(max)
--char(10)换行符
set @SQL='select * from table '+Char(10)
set @SQL=@SQL+' where a='''+@T+''''
Print @SQL
--结果如下,假如转入参考为abc
--select * form table
--where a='abc'
--下面是执行拼接SQL
exec (@SQL)
return 0
end
sql server创建视图添加where条件,条件包含一个参数
视图是不可以传递参数的,如果要传参数可以考虑用存储过程等方法来解决。如,要做一个查询,其中表名是参数。创建存储过程 create proc p_test(@tablename varchar(20))asdeclare @sql varchar(2000)beginset @sql='select * from '+ @tablename +''exec (@sql)end执行存储过程 exec p_test 't...
SQL server 存储过程中 exec中字符怎么匹配
1。@sDate是字符型的,那么引号还是要写得,并且在字符串里面的引号必须连写2个引号 set @sql='left join (select * from where odate='''+@sDate+''') as c '2。如果@sDate是datetime的,那么就转换成字符型的 set @sql='left join (select * from where odate='''+convert(varchar,...
sql server执行存储过程错误,错误提示消息 207,级别 16,状态 1,第 1...
你这行'合同名称='+@ContractNo ,ContractNo 为传进来的参数, 因为字符串拼接后,单引号没有了,导致数据库把把解析为了变量(表的一列),因为数据库没有该列,所以报错了。你这样写试试:set @ContractNoWhere= '合同名称=‘’‘+@ContractNo+’‘’‘不行在M我,一大早我也没清晰 ...
sql怎么把一个表中字段的部分内容替换成另一个表字段的内容
-- tableb 通过 aid 关联tablea 的id,把tableb的fielda字段写入tablea的fielda字段UPDATE tablea SET fielda = (select fielda from tableb where tablea.id=tableb.aid)-- 关联方式一样,把tablea中fielda的字段中的特定字符串替换成tableb中指定字段的值update tablea set fielda = REPLACE...
SQLserver中字符串查找功能patindex和charindex的区别
根据你自己不同的情况,这两个函数对你在SQL Server中的字符串的搜索、控制、分析很有帮助。二、SQL Server CHARINDEX和PATINDEX详解假如你写过很多程序,你可能偶尔会碰到要确定字符或字符窜串否包含在一段文字中,在这篇文章中,我将讨论使用CHARINDEX和PATINDEX函数来 搜索文字列和字符串。我将告诉你这两个函数是...
oracle在写存储过程时怎样将变量和字符串进行连接
变量直接写,要连接字符串的话,用 || 这个符号,后面的字符串用单引号引!例如 变量 V_str 字符串' select emp from table where '连接后为:--- ' select emp from table where '|| V_str --- 希望可以帮助到你!
sql server 怎样在存储过程中调用存储过程
一、SQL SERVER中调用不带输出参数的存储过程 SQL 代码 ?--存储过程的定义 create procedure [sys].[sp_add_product]()as go --存储过程的调用 declare @m_viewcount int declare @m_hotcount int exec sp_add_product @m_viewcount,@m_hotcount 二、SQL SERVER中调用带输出参数的存储过程 SQ...
SQL SERVER 中把表名作为参数传递给存储过程后,怎么把表中的数据赋值...
可以用下面这种写法:DECLARE @T INT;DECLARE @Sql NVARCHAR(200);set @Sql = 'SELECT @T = START FROM ' + @TABLENAME + ' WHERE ...';EXEC SP_EXECUTESQL @Sql, N'@T INT OUTPUT', @T OUTPUT;参考资料:http:\/\/hi.baidu.com\/wangzhiqing999\/blog\/item\/6f6da...
SQL存储过程中将记录集某一记录的某一字段赋值给变量
LZ 试试这个 把位置换换 SELECT TOP 1 @参数=Column FROM Table WHERE ...
sql中的存储过程set是什么意思
的人添加 firstname:UPDATE Person SET FirstName = 'Fred' WHERE LastName = 'Wilson'WHERE子句设置查询条件,过滤掉不需要的数据行。结构化查询语言(Structured Query Language)简称SQL,是一种特殊目的的编程语言,是一种数据库查询和程序设计语言,用于存取数据以及查询、更新和管理关系数据库系统。