declare 定义变量 set 为变量赋值
SUBSTRING()函数
SUBSTRING ( expression, start, length )
expression 字符串、二进制字符串、文本、图像、列或包含列的表达式。请勿使用包含聚合函数的表达式。
start 整数或可以隐式转换为 int 的表达式,指定子字符串的开始位置。
- length 整数或可以隐式转换为 int 的表达式,指定子字符串的长度。
CHARINDEX()函数
返回字符或者字符串在另一个字符串中的起始位置
select * from table_a where charindex('a',id)>0 or charindex('b',id)>0
table_a 表 id字段中含有"a"或者"b"的记录.
CONVERT() 函数
把日期转换为新数据类型的通用函数。可以用不同的格式显示日期/时间数据。
CAST()函数
CAST()函数的参数是一个表达式,它包括用AS关键字分隔的源值和目标数据类型。以下例子用于将文本字符串'123'转换为整型:
SELECT CAST('123' AS int)
返回值是整型值123。如果试图将一个代表小数的字符串转换为整型值,又会出现什么情况呢?
SELECT CAST('123.4' AS int)
CAST()函数和CONVERT()函数都不能执行四舍五入或截断操作。由于123.4不能用int数据类型来表示,所以对这个函数调用将产生一个错误:Server: Msg 245, Level 16, State 1, Line 1
Syntax error converting the varchar value
'123.4' to a column of data type int.
ROWCOUNT
DECLARE @n INT
SET @n = 1000
SET ROWCOUNT @n
DELETE FROM Table_1
写存储过程的时候应该注意尽量避免使用ROWCOUNT,而建议使用TOP。不过TOP关键后面的数字不能为变量而ROWCOUNT可以为变量,也许MS是出于担心开发者忘记了取消ROWCOUNT而影响正常的实现。
使用这样的语句即可取消ROWCOUNT了。
SET ROWCOUNT 0
返回查询行数之后停止处理查询。