博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
MS-SQL Server [摘改]
阅读量:4992 次
发布时间:2019-06-12

本文共 3758 字,大约阅读时间需要 12 分钟。

图例:
方框内, 序号后的
加粗字体为要
演示的函数.
                                 , 括号内的
加粗字体为其
参数.
                                 , 括号内的
内嵌 [ 或 ]
可选参数
       
, 非图片中, 注释内用
' ' (单引号) 标注的内容为描述
参数的值.

字符串转换函数:

1. 
ASCII( 数字 或 字符串 ): 返回数字或字符串的第一个字母(数字也会当作字母)的ASCII值. 
2011062621301378.jpg
2.
CHAR( ASCII码 ): 返回 'ASCII码' 对应的字母. 在 0 ~ 255 内返回正常字母, 其他区间返回 null.
2011062621565758.jpg 
3.  
LOWER/UPPER( 字串 ): 将字串中小写/大写字母转换为大写/小写, 其他字母不变. 若输入数字, 则原样返回.
2011062621535927.jpg 
4.  
STR( 数字, [length], [point] )
length 指定返回的字符串的长度,point 指定返回的小数位数。如果没有指定长度,缺省的 length 值为10, point 缺省值为0。
当 length 或者 point 为负值时,返回NULL;
当 length 小于小数点左边(包括符号位)的位数时,返回length 个*;
先服从 length ,再取 point ;
当返回的字符串位数小于 length ,左边补足空格。 
当返回的字符串小数位数小于 point 时, 右边补 0 。
2011062622284292.jpg 
5.
LTRIM/RTRIM( 字串 ): 去除字串左/右边连续的空格. 当输入数字时原样返回.
2011062622405083.jpg 
6.
LEFT/RIGHT( 字串, 长度 ): 返回从左开始, 向右去 '长度' 个字符的子串. 
数字值大于字串长度则返回整个字串.
数字为 0 则返回 null.
         
负数则导致
函数失败.
2011062622505530.jpg
失败情况:
2011062622503666.jpg 
7.
SUBSTRING( 字串, 起始位置, 长度 ): 从字串 '起始位置' 开始, 向右取 '长度' 个字符的字串.
2011062623044332.jpg 
失败情况:
2011062623054722.jpg
8.
CHARINDEX( 子串, 待搜整串 ): 返回字符串中某个指定的子串出现的开始位置。
返回其在 '待搜整串' 里的起始位置(从 1 开始), 未找到则返回 0.
2011062623165067.jpg 
9.
PATINDEX( 子串, 待搜整串 )
:  -------------不懂------------望高人补充---------------
返回字符串中某个指定的子串出现的开始位置。
PATINDEX (<’%substring _expression%’>, <column_ name>)其中子串表达式前后必须有百分号“%”否则返回值为0。
与CHARINDEX 函数不同的是,PATINDEX函数的子串中可以使用通配符,且此函数可用于CHAR、 VARCHAR 和TEXT 数据类型。 
10.
QUOTENAME( 字串, [边界串] ): 向 '字串' 左右添加一对 '边界串', '边界串' 默认为一对 '[ ]'
某些 '边界串' 无法被添加至 '字串', 则输出 null.
2011062720204221.jpg 
11.
REPLICATE( expression, times ): 返回一个重复 times 次 expression 的字串.
当 times 小于或等于 0 时返回 null.
2011062720372925.jpg 
12.
REVERSE( expression ): 将 'expression' 反转, 但不改变参数的类型.
2011062816393979.jpg
13.
SPACE( 数字 ): 返回 '数字' 个空格的字串.
'数字' 等于 0 时返回空串.
        小于       返回 null.
2011062720385851.jpg 
14.
STUFF( expression1, start-position, length, expression2 ) : 将 'expression1' 从 'start-position' 起, 向右的 'length' 个字符, 替换为 'expression2'.
当 'length' 等于 0 时, 从第 'start-pos' 的做锚点开始插入 'expression2'.
当 'start-position' 小于 0 或大于 'expression1' 长度时返回 null
当 'length' 小于 0 时返回 null
2011062720563520.jpg 
类型转换函数:
1.
CAST( expression as type): 返回新类型
2011062914161421.jpg 
2.
CONVERT (<data_ type>[ length ], <expression> [, style])
1)data_type为SQL Server系统定义的数据类型,用户自定义的数据类型不能在此使用。
2)length用于指定数据的长度,缺省值为30。
3)把CHAR或VARCHAR类型转换为诸如INT或SAMLLINT这样的INTEGER类型、结果必须是带正号或负号的数值。
4)TEXT类型到CHAR或VARCHAR类型转换最多为8000个字符,即CHAR或VARCHAR数据类型是最大长度。
5)IMAGE类型存储的数据转换到BINARY或VARBINARY类型,最多为8000个字符。
6)把整数值转换为MONEY或SMALLMONEY类型,按定义的国家的货币单位来处理,如人民币、美元、英镑等。
7)BIT类型的转换把非零值转换为1,并仍以BIT类型存储。
8)试图转换到不同长度的数据类型,会截短转换值并在转换值后显示“+”,以标识发生了这种截断。
9)用CONVERT()函数的style 选项能以不同的格式显示日期和时间。style 是将DATATIME 和SMALLDATETIME 数据转换为字符串时所选用的由SQL Server 系统提供的转换样式编号,不同的样式编号有不同的输出格式。 
2011062914282255.jpg 
日期函数:
1.
GETDATE(): 返回 datetime 格式的当先日期时间
2011062914331246.jpg 
2.
DAY/MONTH/YEAR( datetime-expression ): 返回 'date-expression' 中的日/月/年部分.
类型是 int
2011062914364460.jpg 
3.  
DATEPART( dd/mm/yy,  datetime-expression): 返回 'date-expression' 中的日/月/年部分. 
类型是 int
等同于 DAY/MONTH/YEAR(datetime-expression).
4.
DATENAME( DAY/MONTH/YEAR, datetime-expression ): 以
字符串形式返回日期时间的一部分.
2011062914393785.jpg 
5.
DATEADD( DAY/MONTH/YEAR, number, datetime-expression ): 返回 'datetime-expression' 的相应部分加上 number 所产生的新的 datetime 日期.
2011062914491397.jpg
6.
DATEDIFF( DAY/MONTH/YEAR, date1, date2 ): 返回 date2 超过 date1 在相应部分的差距值,其结果值是一个带有正负号的整数值。
 
2011062914550860.jpg
--
聚合函数
use
pubs
go
select
avg
(
distinct
price)
--
算平均数
from
titles
where
type
=
'
business
'
go
use
pubs
go
select
max
(ytd_sales)
--
最大数
from
titles
go
use
pubs
go
select
min
(ytd_sales)
--
最小数
from
titles
go
use
pubs
go
select
type,
sum
(price),
sum
(advance)
--
求和
from
titles
group
by
type
order
by
type
go
use
pubs
go
select
count
(
distinct
city)
--
求个数
from
authors
go
use
pubs
go
select
stdev
(royalty)
--
返回给定表达式中所有值的统计标准偏差
from
titles
go
use
pubs
go
select
stdevp
(royalty)
--
返回表达式中所有制的填充统计标准偏差
from
titles
go
use
pubs
go
select
var
(royalty)
--
返回所有值的统计方差
from
titles
go
use
pubs
go
select
varp
(royalty)
--
返回所有值的填充的统计方差
from
titles
go
--
数学函数
select
sin
(
23.45
),
atan
(
1.234
),
rand
(),
PI
(),
sign
(
-
2.34
)
--
其中rand是获得一个随机数
--
部分全局变量
Select
@@VERSION
--
获取当前数据库版本
Select
@@LANGUAGE
--
当前语言
Select
@@RowCount
--
获取最后一次 Select 的结果集行数

转载于:https://www.cnblogs.com/walfud/articles/2090860.html

你可能感兴趣的文章
linux 安装openssh-server, openssh-client
查看>>
Java继承的基本概念及其限制 总结
查看>>
RF1001: 各浏览器对 '@font-face' 规则支持的字体格式不同,IE 支持 EOT 字体,Firefox Safari Opera 支持 TrueType 等字体...
查看>>
Socket 学习(三)
查看>>
题解 CF43B 【Letter】
查看>>
CommandName and CommandArgument
查看>>
[z]FNV哈希算法
查看>>
通过层序和中序遍历序列重建二叉树
查看>>
【Git】git clone与git pull区别
查看>>
【SVN】SVN的trunk、branches、tag的使用以及分支的概念
查看>>
JS闭包理解
查看>>
整数对题目
查看>>
php设计模式-观察者模式
查看>>
NFC技术:使用Android Beam技术传输文本(一)
查看>>
C++判断一个文件是否可以正确打开的代码
查看>>
unity 判断 是手机还是平板
查看>>
VisualStudio2015单步调试
查看>>
【进程资源】监视进程资源
查看>>
团队成员效绩评定
查看>>
【數據結構】哈工大實驗一:一元多项式(代碼以及報告)
查看>>