cast as
将一种数据类型的表达式显式转换为另一种数据类型的表达式。CAST 和 CONVERT 提供相似的功能。
语法 |
---|
Syntax for CAST: CAST ( expression AS data_type [ (length ) ]) Syntax for CONVERT: CONVERT ( data_type [ ( length ) ] , expression [ , style ] ) |
示例
-- Use CAST USE AdventureWorks; GO SELECT SUBSTRING(Name, 1, 30) AS ProductName, ListPrice FROM Production.Product WHERE CAST(ListPrice AS int) LIKE '3%'; GO -- Use CONVERT. USE AdventureWorks; GO SELECT SUBSTRING(Name, 1, 30) AS ProductName, ListPrice FROM Production.Product WHERE CONVERT(int, ListPrice) LIKE '3%'; GO
replace
将第一个字符串表达式中第二个给定字符串表达式的所有实例都替换为第三个表达式。
语法
REPLACE ( 'string_expression1' , 'string_expression2' , 'string_expression3' )
参数
' string_expression1 '
要搜索的字符串表达式。string_expression1 参数的数据类型可以是可隐式转换为 nvarchar 或 ntext 的数据类型。
' string_expression2 '
尝试查找的字符串表达式。string_expression2 参数的数据类型可以是可隐式转换为 nvarchar 或 ntext 的数据类型。
' string_expression3 '
示例
下面的示例在产品名称列表中搜索名称“Anton”并将其替换为“Anthony”:
SELECT REPLACE(ProductName, 'Anton', 'Anthony')FROM Products
charindex
返回字符串中指定表达式的起始位置。
语法
CHARINDEX ( expression1 , expression2 [ , start_location ] )
参数
expression1
包含要查找的字符序列的表达式。expression1 参数是 ntext 类型或可隐式转换为 nvarchar 数据类型的表达式。
expression2
通常用于搜索指定序列的列的表达式。expression2 参数是 ntext 类型或可隐式转换为 nvarchar 数据类型的表达式。
start_location
在 expression2 中搜索 expression1 的起始字符位置。如果没有给定 start_location、或者给定值为负数或零,那么搜索将会开始于 expression2 的起始位置。start_location 参数可以是 tinyint、smallint、int 或 bigint。
返回值
int
代码示例
下面的示例从数据库中的员工姓氏中搜索表达式“an”:
SELECT LastName, CHARINDEX('an', LastName) AS PositionFROM Employees