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 ...
随机推荐
- notepad++覆盖了eclipse的快捷键
好长时间发现eclipse快捷键alt+/无法使用,今天决定解决一下 1.Windows Hotkey Explorer 用此工具找到是notepad++占用了快捷键 2.C:\Program Fil ...
- [MIT6.006] 22. Daynamic Programming IV: Guitar Fingering, Tetris, Super Mario Bro. 动态规划IV:吉他指弹,俄罗斯方块,超级玛丽奥
之前我们讲到动态规划五步中有个Guessing猜,一般情况下猜有两种情况: 在猜和递归上:猜的是用于解决更大问题的子问题: 在子问题定义上:如果要猜更多,就要增加更多子问题. 下面我们来看如果像背包问 ...
- 基于FFmpeg的Dxva2硬解码及Direct3D显示(一)
目录 前言 名词解释 代码实现逻辑 前言 关于视频软解码的资料网上比较多了,但是关于硬解可供参考的资料非常之有限,虽然总得来说软解和硬解的基本逻辑一样,但是实现细节上的差别还是比较多的.虽然目前功能已 ...
- Android studio设置参数文档提示
方法/步骤 进行点击Android studio菜单中的file的选项菜单. 弹出了下拉菜单中进行选择为"settings"的选项的菜单即可. 进入到了settin ...
- CTDB使用radosobject作为lockfile
前言 服务器的服务做HA有很多种方式,其中有一种就是是用CTDB,之前这个是独立的软件来做HA的,现在已经跟着SAMBA主线里面了,也就是跟着samba发行包一起发行 之前CTDB的模式是需要有一个共 ...
- 【Redis】利用 Redis 实现分布式锁
技术背景 首先我们需要先来了解下什么是分布式锁,以及为什么需要分布式锁. 对于这个问题,我们可以简单将锁分为两种--内存级锁以及分布式锁,内存级锁即我们在 Java 中的 synchronized 关 ...
- python之对元组的初步了解
元组: 元组与列表类似但是又有不同,主要的不同就是元组属于不可变序列,一旦创建,任何方法都不可以修改元素. 元组使用小括号( )表示,这与列表不一样,列表是用方括号表示[ ]. a=('a','b') ...
- 【原创】Linux虚拟化KVM-Qemu分析(六)之中断虚拟化
背景 Read the fucking source code! --By 鲁迅 A picture is worth a thousand words. --By 高尔基 说明: KVM版本:5.9 ...
- react-hash-calendar,移动端日期时间选择插件
按照惯例,先上效果图 vue 版本同款日历:https://github.com/TangSY/vue-hash-calendar react-hash-calendar 支持手势滑动操作 上下滑动 ...
- Let's Do 本地开发智能合约
上篇文章我们发了个币,有人抱怨在线(remix)写代码不爽,好吧,那就来看下怎么在本地开发智能合约? 一.安装开发环境 1.安装Node,Node v8.9.4或更高版本 我安装的是: 2.集成开发框 ...