SQL Server常用函数及命令
1.字符串函数
--ascii函数,返回字符串最左侧字符的ascii码值
SELECT ASCII('a') AS asciistr
--ascii代码转换函数,返回指定ascii值对应的字符
SELECT CHAR(97) AS strs
--left(c1,n)左子串函数,返回字符串c1中从左边开始的n个字符
SELECT LEFT('helloworld',4) AS lefts
--len(c1)返回字符串c1的字符(而不是字节)数,其中不包含尾随空格
SELECT LEN('helloworld') AS lens
--lower(c1) 大写转换为小写
SELECT LOWER('HELLOWORLD') AS lowers
--LTRIM(c1)删除前导空格,返回删除了前导空格的字符串 ltrim()去左边空格(rtrim()右边空格)
SELECT LTRIM(' asafas') AS lt
--REPLACE(C1,C2,C3) 替换字符函数
SELECT REPLACE('ZHESSDF-DFDSS','-','@') AS RE
--REPLICATE(C1,N)复制函数,以指定的次数n重复字符串c1
SELECT REPLICATE('这是复制函数-',3) AS rep
--right(c1,n)右子串函数,返回字符串c1中从右边开始的n个字符串
SELECT RIGHT('asdfggh',4) AS strs
--space(n) 空格函数,返回由n个重复的空格字符串
SELECT SPACE(7) AS spaces
--str(f,n,m)返回由数值数据f转换来的字符串,字符串的长度有参数n决定,字符串中保留的小数位书由M决定
SELECT STR(12.1234,9,6) AS strs
--SUBSTRING(c1,n1,n2)求子串函数,返回字符串c1从n1开始,长度为n2的子串
SELECT SUBSTRING('mylightshina',4,5)
--upper(c1) 转大写
SELECT UPPER('asdff') AS up
--ISNULL('内容',''):判断字符串是否为null,是的话返回‘’
2.日期函数
--时间日期
SELECT 'today''s date is '+ CONVERT(VARCHAR(12), GETDATE(),102)AS da
SELECT GETDATE() 当前日期时间,
GETUTCDATE() ut日期时间,
DATEPART(YEAR, GETDATE()) 年,
DATENAME(YEAR, GETDATE()) 年名,
DATEPART(MONTH, GETDATE()) 月,
DATENAME(MONTH, GETDATE()) 月份名,
DATEPART(DAY, GETDATE()) 日,
DAY(GETDATE()) 日,
MONTH(GETDATE()) 月,
YEAR(GETDATE()) 年,
DATEADD(DAY, 5, GETDATE()) 新日期,
DATEDIFF(DAY, GETDATE(), '2018-12-17') AS 日期间隔;
3.系统函数
--转换函数 cast(),convert()
SELECT CAST('2018' AS DECIMAL(10, 5)) AS deci,
CONVERT(VARCHAR, GETDATE(), 101) AS '101',
CONVERT(VARCHAR, GETDATE(), 102) AS '102',
CONVERT(VARCHAR, GETDATE(), 103) AS '103',
CONVERT(VARCHAR, GETDATE(), 104) AS '104',
CONVERT(VARCHAR, GETDATE(), 105) AS '105',
CONVERT(VARCHAR, GETDATE(), 106) AS '106',
CONVERT(VARCHAR, GETDATE(), 107) AS '107',
CONVERT(VARCHAR, GETDATE(), 108) AS '108',
CONVERT(VARCHAR, GETDATE(), 109) AS '109',
CONVERT(VARCHAR, GETDATE(), 100) AS '100',
CONVERT(VARCHAR, GETDATE(), 120) AS '120',
CONVERT(VARCHAR, GETDATE(), 121) AS '121',
CONVERT(VARCHAR, GETDATE(), 126) AS '126',
CONVERT(VARCHAR, GETDATE(), 130) AS '130'; --创建uniqueidentifier类型的唯一值
SELECT NEWID() AS Id
--ISNULL(c1,c2)
SELECT ISNULL(ParentId,'########'),* FROM dbo.Module
--isdate(exp)判断exp是否为有效日期
SELECT ISDATE('2018-12-11 12:2:1')
--ISNUMERIC(c1)判断c1是否是数字,是则返回1,否返回0
SELECT ISNUMERIC('1') 是,ISNUMERIC('a') 否
4.流程控制语句
--begin...end语句块
BEGIN SELECT *
FROM dbo.Role; END;
--if...else语句
IF 1 > 4
SELECT *
FROM dbo.Role;
ELSE
SELECT *
FROM dbo.FlowInstance;
--简单case表达式
SELECT CASE ActivityType WHEN 2 THEN 'qqq' ELSE 'www' END ss ,* FROM dbo.FlowInstance
--搜索case表达式
SELECT CASE WHEN ActivityType>2 THEN 'qqq'ELSE 'www' END ss ,* FROM dbo.FlowInstance --waitfor语句
WAITFOR DELAY '00:00:03';
SELECT *
FROM dbo.Role;
--在下午八点查询输出
WAITFOR TIME '20:00:00';
SELECT *
FROM dbo.Form;
--while语句
DECLARE @sum INT,
@i INT;
SET @i = 0;
SET @sum = 0;
WHILE @i <= 100
BEGIN
SET @i = @i + 1;
IF ((@i % 2) = 0)
CONTINUE;
SET @sum = @sum + @i;
IF (@i > 50)
BREAK;
END;
PRINT '1-50中的奇数和为' + CONVERT(CHAR(6), @sum);
5.sp命令
1、数据库:
--sp_helpdb:报告有关指定数据库或所有数据库的信息。
sp_helpdb --显示所有数据库信息(名称、大小等)
sp_helpdb Recruitment --显示Recruitment数据库信息(名称、大小等)
--sp_renamedb:更改数据库的名称。
sp_renamedb ’pubs’,’pub’--将名为pubs的数据库改名为pub
--sp_dboption:显示或更改数据库选项。不能在master 或tempdb 数据库上使用sp_dboption。
sp_dboption ’Recruitment’,’READ ONLY’,’TRUE’--设置Recruitment数据库为READ ONLY
2、表
--sp_help:当前数据库中查找对象。
sp_help Employee --显示Employee表的结构
--sp_rename:更改当前数据库中用户创建对象(如表、列或用户定义数据类型)的名称。
sp_rename ’employee’,’employ’
3、用户自定义数据类型
--sp_addtype:创建用户定义的数据类型。
sp_addtype birthday, datetime, ’NULL’
--创建了一个名为birthday 的用户定义数据类型(基于datetime),该数据类型允许空值
--sp_droptype: 删除用户定义的数据类型。
sp_droptype ’birthday’--删除用户定义的数据类型birthday
--sp_help:查看用户自定义数据类型的情况
sp_help birthday --查看用户定义的数据类型birthday的信息
4、规则
--sp_bindrule:将规则绑定到列或用户定义的数据类型。
sp_bindrule rulType,’Titles.Type’--将规则rulType绑定到Titles表的Type列
--sp_unbindrule:在当前数据库中为列或用户定义数据类型解除规则绑定。
sp_unbindrule ’Titles.Type’--取消绑定到Tiltes表中的Type列的规则
--sp_helptext:查看规则的详细信息。
sp_helptext rulType --查看规则rulType的详细信息
5、缺省 --sp_bindefault:将默认值绑定到列或用户定义的数据类型。
--sp_unbindefault:在当前数据库中为列或者用户定义数据类型解除(删除)默认值绑定。
--sp_helptext:查看默认值的信息。
6、索引
--sp_helpindex:报告有关表或视图上索引的信息。
--sp_helpindex employee --查看employee表中索引信息
7、视图
--sp_helptext:查看视图文本
8、存储过程
--sp_helptext:查看存储过程文本
9、触发器
--sp_help <触发器名>:查看指定触发器是否存在
--sp_helptrigger:返回指定表中定义的当前数据库的触发器类型。
10、其他
--sp_help:报告有关数据库对象、用户定义数据类型或 数据类型的信息。
--sp_helptext:显示规则、默认值、未加密的存储过程、用户定义函数、触发器或视图的文本。
--sp_rename:更改当前数据库中用户创建对象(如表、列或用户定义数据类型)的名称。
SQL Server常用函数及命令的更多相关文章
- SQL Server 常用函数使用方法
之前就想要把一些 SQL 的常用函数记录下来, 直到今天用到substring()这个函数,C# 里面这个方法起始值是 0,而 SQL 里面起始值是 1.傻傻分不清楚... 这篇博客作为记录 SQL ...
- Oracle 与Sql Server常用函数对比
来自:http://topic.csdn.net/u/20080704/08/b2b8c42f-b0d6-4cda-98b1-6e4a279b4ff8.html 感谢楼主 函数 SQLServer和O ...
- SQL Server 常用函数总结
SQL去空格函数 1.ltrim(‘内容’)--去掉字符左边的空格 代码如下 declare @str varchar(100) set @str=' ADFADF' select @str sele ...
- SQL Server 常用函数使用方法(持续更新)
之前就想要把一些 SQL 的常用函数记录下来,不过一直没有实行...嘿嘿... 直到今天用到substring()这个函数,C# 里面这个方法起始值是 0,而 SQL 里面起始值是 1.傻傻分不清楚. ...
- Sql Server常用函数及技巧
使用Sql Server好长时间了,今天特别想总结一下,算是回顾吧! 总结: 其实很多技巧,都是基于SQL Server自带的System Views,System Stored Procedures ...
- SQL Server 常用函数
1.DATEADD 在向指定日期加上一段时间的基础上,返回新的 datetime 值. 语法 DATEADD ( datepart , number, date ) 参数 datepart 是规定应向 ...
- sql server常用函数、常用语句
一.常用函数 1.字符串函数 : charindex(':','abc:123') --寻找一个字符在一段字符串中起始的位置 len('zhangsan') --获取一段字符串的长度 lef ...
- SQL Server常用函数使用方法(学习)
1.转载至 https://www.cnblogs.com/Brambling/p/6779434.html Substring()函数,用于截取字符串方法,三个参数 参数1:用于指定要操作的字符串 ...
- SQL Server常用函数汇总
1.day(date) 用途:获取日期是所在月的几号 参数:date是一个可以解析为 time.date.smalldatetime.datetime.datetime2 或 datetime ...
随机推荐
- Docker - 解决同步容器与主机时间报错:Error response from daemon: Error processing tar file(exit status 1): invalid symlink "/usr/share/zoneinfo/UTC" -> "../usr/share/zoneinfo/Asia/Shanghai"
问题背景 这里讲解了如何同步容器和主机的时间:https://www.cnblogs.com/poloyy/p/13967532.html 其中使用方法二 docker cp /etc/localti ...
- Python_爬虫笔记_2018.3.19
Python_爬虫_笔记 1.前言 1.1爬虫用途: 网站采集.接口采集(地图(jis 热力学 屋里端口/协议).微信.知乎.) 1.2基本流程:网页下载(requests)+网页解析+爬虫调度 网页 ...
- 分布式监控系统之Zabbix宏、模板和自定义item
前文我们聊了下zabbix的基础使用,包括主机的添加.监控项.触发器.action以及告警通知的配置,回顾请参考https://www.cnblogs.com/qiuhom-1874/p/140073 ...
- Guitar Pro小课堂之如何演奏刮弦
每当我们听到吉他现场演出的时候,看到吉他手在激烈的刮弦时,都觉得很酷,非常有感染力.刮弦在我们弹吉他或编曲时,会经常用到,虽然时间很短,但会为你加分不少. 那么我们应该如何演奏刮弦呢,我们先用E5和弦 ...
- 如何利用 CleanMyMac X 进行系统清理
CleanMyMac X是一款颇受欢迎的专业清理软件,拥有十多项强大的功能,可以进行系统清理.清空废纸篓.清除大旧型文件.程序卸载.除恶意软件.系统维护等等,并且这款清理软件操作简易,非常好上手,特别 ...
- 「CF645E」 Intellectual Inquiry
题目链接 CF645E 题意 有一个长为\(n\)的由小写字母组成的字符串,需要用小写字母再填\(m\)位,使最后的字符串中本质不同的子串数量尽量多,答案对\(10^9+7\)取模. 本题数据:\(n ...
- LeetCode周赛#207
5519. 重新排列单词间的空格 #字符串 #模拟 题目链接 题意 给定字符串text,该字符串由若干被空格包围的单词组成,也就说两个单词之间至少存在一个空格.现要你重新排列空格,使每对相邻单词间空格 ...
- 分享:经常说你精通C语言,看看这十道题你会不会解!
今天给大家分享我们在日常工作中可能遇到的疑问,不看答案,你是否有把握都能答对?让我们来试试吧~ 一.会输出"hello-std-out"? 参考答案: stdout和stder ...
- sentinel整合servlet
<dependency> <groupId>com.alibaba.csp</groupId> <artifactId>sentinel-web-ser ...
- 【mq读书笔记】消息拉取长轮训机制(Broker端)
RocketMQ并没有真正实现推模式,而是消费者主动想消息服务器拉取消息,推模式是循环向消息服务端发送消息拉取请求. 如果消息消费者向RocketMQ发送消息拉取时,消息未到达消费队列: 如果不启用长 ...