SQL 字符串相关

一、sql中,字符串保存序号,按照数字顺序进行排序

----/*省略部分代码*/---
order by RIGHT(REPLICATE('0',10)+CAST(householdNo AS varchar(10)),10)  asc
--householdNo 为要排序字段

二、SQL Server 时间字符串转换为DateTime格式

SELECT GETDATE() -------获取当前时间
SELECT CONVERT(DATETIME,'2018-06-26 09:54:30.027'); --------将时间字符串转换为DATETIME格式,

三、SQL字符串截取

  1、CHARINDEX(substr ,str):返回子串 substr 在字符串 str 中第一次出现的位置,如果字符substr在字符串str中不存在,则返回0;

  2、LEFT(str, length):从左边开始截取str,length是截取的长度;

  3、RIGHT(str, length):从右边开始截取str,length是截取的长度;

  4、SUBSTRING(str  ,n ,m):返回字符串str从第n个字符截取到第m个字符;

  5、REPLACE(str, n, m):将字符串str中的n字符替换成m字符;

  6、LEN(str):计算字符串str的长度;

  7、REVERSE(str):把字符串倒置;REVERSE("1234"); ----> 4321

  实例:

SELECT ...,SGCompInfo,
      SUBSTRING(SGCompInfo,0,CHARINDEX(',' ,SGCompInfo)) SGComp,
      SUBSTRING(SGCompInfo,CHARINDEX(',' ,SGCompInfo)+1,LEN(SGCompInfo)) SGer,...
FROM ....

  执行结果:

  

 四、sql字符串替换  replace函数

  语法:replace(源字符串,字符串中某个字符或字符串,要修改为哪个字段)

  例:(以时间格式转为时间戳为例)

select CONVERT(varchar,GETDATE(),21) timenow1
select   CONVERT(char(17),replace(replace(replace(replace(CONVERT(varchar,GETDATE(),21),'-',''),':',''),' ',''),'.',''))timenow2

  执行结果:

  

五、SQL 中字母大小写的转换

  ①将大写字母改为小写字母
    语法: Lower(str)  
  ②将小写字母转化成大写字母
    语法:Upper(str)

猜你喜欢

转载自www.cnblogs.com/dyhao/p/11667159.html