20101102--SQL字符串函数 ,日期和时间函数
--------------------字符串函数-------------------------
--ASCII 返回字符串的首字母的ASCII编码
select ASCII('w')
select ASCII('a')
select ASCII('s')
select ASCII('d')
select ASCII(name) from xueshengxinxi
select *from xueshengxinxi where ASCII(name)>200--查询name中ASCII码大于200的
--CHAR 将ASCII代码转换成对应字符 CHAR
select CHAR (101)
select CHAR(age) from xueshengxinxi
--INDEX
--CHARINDEX 查找字符串,返回符合条件的字符串首字母的索引,索引从1开始,返回0是没有找到
select CHARINDEX('%','qwe#r1%4tyyuiopasdfghjklzxcvbnm')
select CHARINDEX('',test2) from xueshengxinxi
--PATINDEX 返回指定表达式中某模式第一次出现的起始位置;如果在全部有效的文本和字符数据类型中没有找到该模式,则返回零。
-- 通配符 含义
-- % 包含零个或多个字符的任意字符串。
-- _ 任何单个字符。
-- [ ] 指定范围(例如 [a-f])或集合(例如 [abcdef])内的任何单个字符。
-- [^] 不在指定范围(例如 [^a - f])或集合(例如 [^abcdef])内的任何单个字符。
select PATINDEX ('%%%','846!@#q78dwq6%478')
--字符串拼接 +号
select 'abc'+'def'+'gh'
--DIFFERENCE 返回相似度,
select DIFFERENCE('abcde','')
--LEFT 返回字符串中从左边开始指定个数的字符。 LEFT
select LEFT('abcde',3)--后面数字是几就截取几个
select LEFT(test2,2) from xueshengxinxi
--RIGHT 返回字符串中从右边开始指定个数的字符。 --LEN 返回指定字符串表达式的字符数,其中不包含尾随空格。
select LEN(' 1234 ')
--LOWER 转化为小写
select LOWER('ASDFG')
--UPPER 转化大写 --LTRIM 去除字符串中的左边的空格,.net的trimstart
select LTRIM(' 1 ')
--RTRIM 去除字符串中的右边的空格, --REPLACE 替换,第一个参数是目标位置,第二个参数是要替换的字符段,第三个是要替换成的字符串。仅显示结果,这不会影响数据库的数据,
select REPLACE(test,'','二分') from xueshengxinxi
--REPLICATE 复制,可以复制0-n次,相当于先剪切再复制
select REPLICATE('qwe',3)
--REVERSE 翻转
select REVERSE(name) from xueshengxinxi
--SOUNDEX 返回一个由四个字符组成的代码 (SOUNDEX),用于评估两个字符串的相似性
SELECT SOUNDEX ('Smith'), SOUNDEX ('Smythe')
--SPACE 空格 参数是几输入几个空格
select 'a'+SPACE(10)+'b'
--STR 返回由数字数据转换来的字符数据。参数1是原数值,参数2是字符串长度(包括小数点),参数3是截取到小数点后几位
select STR(213.450,5,2)
--STUFF 将字符串插入另一字符串。参数1原字符串,参数2指定删除和插入的开始位置,参数3指定要删除的字符数,参数4指定要插入的字符串
select STUFF('abc123gh',4,3,'def')
--SUBSTRING 从指定索引处截取指定长度的字符串。参数1原始字符串,参数2指定索引,参数2截取的字符串长度
select SUBSTRING(name,2,1) from xueshengxinxi
-------------------日期和时间函数-------------------
--DATEADD 给指定日期加上一个时间段
select DATEADD(YEAR,2,'2008-10-1')--参数1时间类,参数2时间间隔,参数3指定的时间
--DATEDIFF 求时间差,可以指定类型的
select DATEDIFF(DAY,'2010-1-10','2010-5-1')--参数1指定类型,参数2第一个指定的时间,参数3第二个指定的时间
--DATENAME 返回指定的时间类型的的数,返回的是字符型,可单独获取年月日时分秒
select DATENAME(MONTH,'2013-6-20')
--DATEPART 返回指定的时间类型的数,返回的是int型,可单独获取年月日时分秒
select DATEPART(HOUR,'2013-6-20 12:10:50')
--DAY 返回日期中的时间是当月的那一天
select DAY('2012-4-19')
--MONTH 返回日期中的时间是当年的那一月
select MONTH('2011-9-15')
--YEAR 获取年份
select YEAR('2000-9-15')
--GETDATE 获取当前时间
select GETDATE()
--STSDATETIME 获取系统时间,
select SYSDATETIME()
--ISDATE 确定输入表达式是否为有效的日期或时间值。正确返回1,错误返回0
select ISDATE('2012-2-29')
------------------类型转换,转换函数-------------------
--CAST CONVERT 表达式不同
--CAST
select CAST(123 as varchar(10))
select CAST(1.23 as int)
select CAST(123 as decimal(10,2))
select CAST('12.3' as decimal(10,2))
--CONVERT
select CONVERT(int,'')
select CONVERT(decimal(10,3),'12.3')
--查询学生的名字和身份证上的出生日期
alter table xueshengxinxi add [card] varchar(20)
update xueshengxinxi set [card]='' where [No.] between 1 and 7
update xueshengxinxi set [card]='' where [No.] between 8 and 15
update xueshengxinxi set [card]='' where [No.] between 16 and 20
select *from xueshengxinxi
select name,(SUBSTRING([card],7,4)+'年'+substring([card],11,2)+'月'+substring([card],13,2)+'日')出生日期 from xueshengxinxi
20101102--SQL字符串函数 ,日期和时间函数的更多相关文章
- sql server 系统常用函数:聚合函数 数学函数 字符串函数 日期和时间函数和自定义函数
一.系统函数 1.聚合函数 聚合函数常用于GROUP BY子句,在SQL Server 2008提供的所有聚合函数中,除了COUNT函数以外,聚合函数都会忽略空值AVG.COUNT.COUNT_BIG ...
- Sql Server函数全解<四>日期和时间函数
原文:Sql Server函数全解<四>日期和时间函数 日期和时间函数主要用来处理日期和时间值,本篇主要介绍各种日期和时间函数的功能和用法,一般的日期函数除了使用date类型的参数外, ...
- ylb:日期和时间函数
ylbtech-SQL Server:SQL Server-日期和时间函数 日期和时间函数. ylb:日期和时间函数 返回顶部 1,日期和时间函数获取(当前)日期 GetDate() 2,提取部分日期 ...
- sql的日期和时间函数–date_format
Mysql的日期和时间函数–date_format DATE_FORMAT(date,format)依照 format 字符串格式化 date 值.下面的修饰符可被用于 format 字符串中:修 ...
- Sql Server函数全解(四)日期和时间函数
日期和时间函数主要用来处理日期和时间值,本篇主要介绍各种日期和时间函数的功能和用法,一般的日期函数除了使用date类型的参数外,也可以使用datetime类型的参数,但会忽略这些值的时间部分.相同 ...
- SQL日期和时间函数
使用这些函数可以计算日期和时间值.例如,假设您希望了解通常在一周中哪一天的销售量最高.使用 DAYOFWEEK 函数,您可以创建一个公式来标识每天的销售订单数量.再比如,假设您希望比较在过去的一年中的 ...
- sqlserver常用日期、时间函数和格式
Sql Server中常用的日期与时间函数1. 当前系统日期.时间 select getdate() 2. dateadd 在向指定日期加上一段时间的基础上,返回新的 datetime 值 ...
- MySql日期与时间函数
select DATE_FORMAT(date_sub(current_date(), interval 1 day), '%Y-%m-%d') -- 2018-05-29(昨天) select DA ...
- 转)MySQL日期与时间函数
-- MySQL日期时间处理函数 -- 当前日期:2017-05-12(突然发现今天512,是不是会拉防空警报) SELECT NOW() FROM DUAL;-- 当前日期时间:2017-05-12 ...
随机推荐
- ProgressBarLayoutView
https://github.com/alter-ego/ProgressBarLayoutView
- C++ SFINAE
1. 什么是SFINAE 在C++中有很多的编程技巧(Trick), SFINAE就是其中一种, 他的全义可以翻译为”匹配失败并不是一个错误(Substitution failure is not a ...
- Angularjs Controller 间通信机制
在Angularjs开发一些经验总结随笔中提到我们需要按照业务却分angular controller,避免过大无所不能的上帝controller,我们把controller分离开了,但是有时候我们需 ...
- vm.dirty_background_ratio and vm.dirty_ratio
http://hellojava.info/?p=264&utm_source=tuicool&utm_medium=referral 解决磁盘io紧张的一种临时方法 有些时候可能会碰 ...
- 解决ntfs格式的移动硬盘mount到Linux下时变成只读文件系统的问题
环境介绍 主机: XP 虚拟机:VirtualBox+Debian6 遇到的问题 我有一块西部数据的移动硬盘,虚拟机中有一些资料需要拷贝到移动硬盘中,然后我将移动硬盘插上后,执行如下设置,将移动硬盘分 ...
- SQL性能优化十条经验
1.查询的模糊匹配 尽量避免在一个复杂查询里面使用 LIKE '%parm1%'—— 红色标识位置的百分号会导致相关列的索引无法使用,最好不要用. 解决办法: 其实只需要对该脚本略做改进,查询速度便会 ...
- Git_Windows 系统下Git安装图解
Windows 系统下Git安装图解 心得 :很成功~ 简单来说Git是一个免费的.开源的版本控制软件,从功能上讲,跟我们比较熟悉的Subversion(SVN)这类版本控制软件没什么两样.由于工 ...
- 结合源码看nginx-1.4.0之nginx多进程机制详解
目录 0. 摘要 1. nginx多进程设计思想 2. nginx多进程设计数据结构 3. nginx进程间通信机制 4. 一个简单的多进程例子 5. 小结 6. 参考源码
- Boost.Any
支持类型安全地存储和获取任意类型的值 #include <list> #include <boost/any.hpp> #include <string> #inc ...
- NODE编程(四)--构建Node Web程序2
四.提供静态文件服务 1.创建一个静态文件服务器 __dirname ,取值是该文件所在咋目录路径.分散在不同目录中的文件可以有不同的值. /** * 最进本的ReadStream静态文件服务器 */ ...