一道紧急的SQL语句 select right(email,len(email)-charindex('@',email)) from table 解决方案 » 免费领取超大流量手机卡,每月29元包185G流量+100分钟通话, 中国电信官方发货 语法CHARINDEX ( expression1 , expression2 [ , start_location ] ) 参数expression1一个表达式,其中包含要寻找的字符的次序。expression1 是一个短字符数据类型分类的表达式。expression2一个表达式,通常是一个用于搜索指定序列的列。expression2 属于字符串数据类型分类。start_location在 expression2 中搜索 expression1 时的起始字符位置。如果没有给定 start_location,而是一个负数或零,则将从 expression2 的起始位置开始搜索。 select right(email,len(email)-charindex('@',email)) from tselect stuff(email,1,charindex('@',email),'') from t-- test:declare @email varchar(100)set @email='[email protected]'select right(@email,len(@email)-charindex('@',@email))select stuff(@email,1,charindex('@',@email),'')--charindex后带有哪些参数?--CHARINDEX返回字符串中指定表达式的起始位置。 语法CHARINDEX ( expression1 , expression2 [ , start_location ] ) 参数expression1一个表达式,其中包含要寻找的字符的次序。expression1 是一个短字符数据类型分类的表达式。expression2一个表达式,通常是一个用于搜索指定序列的列。expression2 属于字符串数据类型分类。start_location在 expression2 中搜索 expression1 时的起始字符位置。如果没有给定 start_location,而是一个负数或零,则将从 expression2 的起始位置开始搜索。返回类型int STUFF删除指定长度的字符并在指定的起始点插入另一组字符。语法STUFF ( character_expression , start , length , character_expression ) 参数character_expression由字符数据组成的表达式。character_expression 可以是常量、变量,也可以是字符或二进制数据的列。start是一个整形值,指定删除和插入的开始位置。如果 start 或 length 是负数,则返回空字符串。如果 start 比第一个 character_expression 长,则返回空字符串。length是一个整数,指定要删除的字符数。如果 length 比第一个 character_expression 长,则最多删除到最后一个 character_expression 中的最后一个字符。返回类型如果 character_expression 是一个支持的字符数据类型,则返回字符数据。如果 character_expression 是一个支持的 binary 数据类型,则返回二进制数据。 [玻璃鱼V]问些数据库建表基础问题 列到行的转变?还请各位指教! 请问这句要怎么改? 刚学习SQL,请教各位高手这个问题 SQL server能在 win2003上装么? exec sp_decrypt 'EL_SP_GetFlightBook' 返回一个创建存储过程,如何马上调用结果创建存储过程 郁闷的问题!! 如何解决除法表达式除数为零的情况 请问如何给一个已经建立好的SQL数据库重新命名呀?? 高手请帮忙!关于密文解密的问题。。 读取excel文件问题 如何建立自动编号字段?
CHARINDEX ( expression1 , expression2 [ , start_location ] ) 参数
expression1一个表达式,其中包含要寻找的字符的次序。expression1 是一个短字符数据类型分类的表达式。expression2一个表达式,通常是一个用于搜索指定序列的列。expression2 属于字符串数据类型分类。start_location在 expression2 中搜索 expression1 时的起始字符位置。如果没有给定 start_location,而是一个负数或零,则将从 expression2 的起始位置开始搜索。
select stuff(email,1,charindex('@',email),'') from t
-- test:
declare @email varchar(100)
set @email='[email protected]'
select right(@email,len(@email)-charindex('@',@email))
select stuff(@email,1,charindex('@',@email),'')--
charindex后带有哪些参数?
--
CHARINDEX
返回字符串中指定表达式的起始位置。 语法
CHARINDEX ( expression1 , expression2 [ , start_location ] ) 参数
expression1一个表达式,其中包含要寻找的字符的次序。expression1 是一个短字符数据类型分类的表达式。expression2一个表达式,通常是一个用于搜索指定序列的列。expression2 属于字符串数据类型分类。start_location在 expression2 中搜索 expression1 时的起始字符位置。如果没有给定 start_location,而是一个负数或零,则将从 expression2 的起始位置开始搜索。返回类型
int
删除指定长度的字符并在指定的起始点插入另一组字符。语法
STUFF ( character_expression , start , length , character_expression ) 参数
character_expression由字符数据组成的表达式。character_expression 可以是常量、变量,也可以是字符或二进制数据的列。start是一个整形值,指定删除和插入的开始位置。如果 start 或 length 是负数,则返回空字符串。如果 start 比第一个 character_expression 长,则返回空字符串。length是一个整数,指定要删除的字符数。如果 length 比第一个 character_expression 长,则最多删除到最后一个 character_expression 中的最后一个字符。返回类型
如果 character_expression 是一个支持的字符数据类型,则返回字符数据。如果 character_expression 是一个支持的 binary 数据类型,则返回二进制数据。