当前位置:  数据库>sqlserver

Sql字符串操作函数大全

    来源: 互联网  发布时间:2014-08-29

    本文导语:  首先,第一个问题: select * from itemcode where code like '40%' 如何让code=40101001 变成code=401-01-001 目前有666个CODE是类似40101001 用什么语句能把它变成401-01-001 解答: update itemcode set code=replace(code,left(code,8),left(code,3)+'-'+substring(...

首先,第一个问题:
select * from itemcode
where code like '40%'
如何让code=40101001
变成code=401-01-001
目前有666个CODE是类似40101001
用什么语句能把它变成401-01-001

解答:
update itemcode set code=replace(code,left(code,8),left(code,3)+'-'+substring(code,4,2)+'-'+substring(code,6,3)) where code like '40%'

问题2:
replace(code,left(code,8),left(code,3)+'-'+substring(code,4,2)+'-'+substring(code,6,3))是什么意思?

解答:
拿 code=123456789 做例子
a = left(code,8) = 12345678
b = left(code,3) = 123
c = substring(code,4,2) = 45
d = substring(code,6,3) = 678
e = b+'-'+c+'-'+e = 123-45-678
f = replace(code,a,e) = 123-45-6789
配合下边的来看,应该能明白了
1、left(code,8) 取前8位
2、substring(code,4,2) 从第4位开始取2位
3、+ 是字符串连接符
4、replace(a,str1,str2) 将a中的str1替换为str2

附:
sql server常用字符串操作函数

1:replace 函数
第一个参数你的字符串,第二个参数你想替换的部分,第三个参数你要替换成什么
select replace('lihan','a','b')
                                                    
-----------------------------
lihbn

(所影响的行数为 1 行)

2:substring函数
第一个参数你的字符串,第二个是开始替换位置,第三个结束替换位置
select substring('lihan',0,3);
-----
li

(所影响的行数为 1 行)

3:charindex函数
第一个参数你要查找的char,第二个参数你被查找的字符串 返回参数一在参数二的位置
select  charindex('a','lihan')
-----------
4

(所影响的行数为 1 行)

4:ASCII函数
返回字符表达式中最左侧的字符的 ASCII 代码值。
select ASCII('lihan')
-----------
108

(所影响的行数为 1 行)

5:nchar函数
根据 Unicode 标准的定义,返回具有指定的整数代码的 Unicode 字符。
参数是介于 0 与 65535 之间的正整数。如果指定了超出此范围的值,将返回 NULL。
select nchar(3213)
----
unicode字符

(所影响的行数为 1 行)

6:soundex
返回一个由四个字符组成的代码 (SOUNDEX),用于评估两个字符串的相似性。
SELECT SOUNDEX ('lihan'), SOUNDEX ('lihon');
----- -----
L546  L542

(所影响的行数为 1 行)

7:char
参数为介于 0 和 255 之间的整数。如果该整数表达式不在此范围内,将返回 NULL 值。
SELECT char(125)
----
}

(所影响的行数为 1 行)

8:str函数
第一个参数必须为数字,第二个参数表示转化成char型占的位置,小于参数一位置返回*,大于右对齐
SELECT str(12345,3)
----
***

(所影响的行数为 1 行)

SELECT str(12345,12)
------------
       12345

(所影响的行数为 1 行)

9:difference函数
返回一个整数值,指示两个字符表达式的 SOUNDEX 值之间的差异。
返回的整数是 SOUNDEX 值中相同字符的个数。返回的值从 0 到 4 不等:0 表示几乎不同或完全不同,4 表示几乎相同或完全相同。
SELECT difference('lihan','liha')
-----------
3

(所影响的行数为 1 行)

10:stuff函数(四个参数)
函数将字符串插入另一字符串。它在第一个字符串中从开始位置删除指定长度的字符;然后将第二个字符串插入第一个字符串的开始位置。
SELECT stuff('lihan',2,3,'lihan')
--------
llihann

(所影响的行数为 1 行)

11:left函数
返回最左边N个字符,由参数决定
select left('lihan',4)
-----
liha

(所影响的行数为 1 行)

12: right函数
返回最右边N个字符,由参数决定
select right('lihan',4)
-----
ihan

(所影响的行数为 1 行)

13:replicate函数
我的认为是把参数一复制参数二次
select replicate('lihan',4)
--------------------
lihanlihanlihanlihan

(所影响的行数为 1 行)

14:len函数
返回参数长度
select len('lihan')
-----------
5

(所影响的行数为 1 行)

15:reverse函数
反转字符串
select reverse('lihan')
-----
nahil

(所影响的行数为 1 行)

16:lower和upper函数
参数大小写转化
select lower(upper('lihan'))
--------------------
lihan

(所影响的行数为 1 行)

17:ltrim和rtrim函数
删除左边空格和右面空格
select ltrim('    lihan                 ')
--------------------------
lihan               

(所影响的行数为 1 行)
select rtrim('    lihan')
---------
    lihan

(所影响的行数为 1 行)


    
 
 

您可能感兴趣的文章:

  • SqlServer中用exec处理sql字符串中含有变量的小例子
  • 将一个字符串分成多列的Sql
  • sqlserver中求字符串中汉字的个数的sql语句
  • SQLServer中字符串左对齐或右对齐显示的sql语句
  • 拼接SQL字符串方法示例
  • 去除字符串中的相同的字符串的sql函数
  • 在SQL中获取一个长字符串中某个字符串出现次数的实现方法
  • C处理SQL命令字符串的函数哪里有?
  • Oracle中SQL语句连接字符串的符号使用介绍
  • C#检测是否有危险字符的SQL字符串过滤方法
  • sql函数实现去除字符串中的相同的字符串
  • 拼接SQL字符串与日期模糊查询的例子
  • sql server字符串非空的判断方法
  • SQL查询某列指定长度的字符串多余的用省略号来表示
  • 很奇怪,varchar2类型在sql*plus中可以看到正常的字符串,用java读出来却是二进制?
  • 用SQL语句实现替换字符串
  • sqlserver中遍历字符串的sql语句
  • 录入的字符串包含'这样的字符,拼装的sql也用到',提交失败。
  • sql server字符串非空判断实现方法
  • (oracle)如何解决这个很长的sql字符串:(怎样让他转行?)
  • 在SQL中有函数,比如COUNT(*),怎样通过JDBC调用获得函数值????
  • SQL中含函数,比如COUNT(*),怎样在JDBC接口中取出函数值????
  • sql server中ISNULL函数与Mysql中IFNULL函数的用法
  • sql数据库不能直接用instr函数
  • T-SQL常用的聚合函数
  • sql server中自定义一个简单的 split 函数
  • 初学者问题:标准的sql里有处理日期的函数吗?
  • access与sql server几个常用函数的区别(图文)
  • 分享:sql server 取日期的年月日部分的函数
  • sql函数实现递归查询示例
  • T-SQL常用的数学函数
  •  
    本站(WWW.)旨在分享和传播互联网科技相关的资讯和技术,将尽最大努力为读者提供更好的信息聚合和浏览方式。
    本站(WWW.)站内文章除注明原创外,均为转载、整理或搜集自网络。欢迎任何形式的转载,转载请注明出处。












  • 相关文章推荐
  • sql无效字符引起的执行sql语句报错的解决方法
  • sql server全角字符与半角字符的检验
  • sql无效字符 执行sql语句报错解决方案
  • sql server中使用Unicode字符时要注意的问题
  • mysql 里面的sql语句的连接字符是什么?急用!
  • 访问SQL server 2000数据库时显示字符不正确?100分,在线付分。
  • sql语句中包含中文字符不能运行...
  • 用sql获取某字符串中的数字部分的语句
  • sqlserver中去除字符串中连续的分隔符的sql语句
  • SQL Server中通过reverse取某个最后一次出现的符号后面的内容(字符串反转)
  • SQL语句 一个简单的字符串分割函数
  • 使用T-SQL的Split拆分字符串的方法
  • 我使用jdbc-odbc桥,拼出sql字符串,为什么总是说:括号内的串没有正常结束?
  • 深入SQL截取字符串(substring与patindex)的详解
  • T-SQL常用的聚合函数 iis7站长之家
  • sql server在text类型字段中查找字符串出现次数
  • sql server查找text类型字段中字符串出现的次数
  • SQL Server字符串切割函数
  • sql2005字符段分段更新的代码
  • SQL Substring提取部分字符串
  • java命名空间java.sql接口statement的类成员方法: executeupdate定义及介绍
  • 请问,这是什么错误!java.sql.SQLException: [Microsoft][ODBC SQL Server Driver][Named Pipes]??????? SQL Server?虽然分少,但一定给,只要您是前5名回复者中最好的以为!
  • java命名空间java.sql接口connection的类成员方法: nativesql定义及介绍
  • SQL查询分析工具 SQL Workbench/J
  • java命名空间java.sql接口preparedstatement的类成员方法: executeupdate定义及介绍
  • oracle导出sql语句的结果集和保存执行的sql语句(深入分析)
  • java命名空间java.sql接口rowid的类成员方法: getbytes定义及介绍
  • SQL Server统计SQL语句执行时间的脚本
  • java命名空间java.sql接口ref的类成员方法: getbasetypename定义及介绍
  • SQL客户端软件 PKLite SQL Client
  • java命名空间java.sql接口databasemetadata的类成员方法: getsqlkeywords定义及介绍


  • 站内导航:


    特别声明:169IT网站部分信息来自互联网,如果侵犯您的权利,请及时告知,本站将立即删除!

    ©2012-2021,,E-mail:www_#163.com(请将#改为@)

    浙ICP备11055608号-3