SQL基础函数
首先咱们一起来看一下SQL的基本函数
一、聚合函数
二、数学函数
三、字符串函数
四、转换函数
五、时间函数
这样子看起来可能很多,那咱们给变得-----------------------------再多一点儿
一、聚合函数(AVG、SUM、MIN、MAX、COUNT)
AVG:老套路,字面意思解释,平均值。
select *from car
现在是查询car表格内的全部信息,嗯。。。。。。上图给大家看一下吧,虽然说看的不是很清楚
1 select AVG(price) from car
现在咱们就是在计算在car这个表格里面的price列的平均值
SUM:求和
select SUM(price) 求和 from car
MIN:最小值
1 select MIN(price) 最小值 from car
这些都可以自己查看下我做的对不对,不管方法的简单或者是复杂,只要你做对了就行,现在咱们只是一起来学习,仅此而已
MAX:最大值
1 select MAX(price) 最大值 from car
COUNT:非常简单容易的可以理解为计算行数,在SQL中所写的代码都是按照列来写的,那么COUNT就是计算一共多少行的,so easy
1 select COUNT(*) FROM car
咱们先显示全部内容,咱们一起来数一下一共多少行,然后再通过方便的代码方式查出总共多少行,万一要是千万级的呢,你总不能让客户自己看下拉菜单吧
最左下角是26,代表的是行数,那咱们看下面用代码显示的结果是不是26
很显然,是正确的,是不是很简单
二、数学函数(ceiling、floor、round、PI、SQRT(开根号,知道即可)、SQUARE(平方根,同上))
ceiling:取上限,打个比方:4.1取上限那就会变成5,也就是说不管什么四舍五入,就是给你取个上线,可以理解为去掉小数点儿后给原值+1,当然,小数点后的数字一定是>0的
1 select CEILING(4.0)
这个的结果就是4
1 select CEILING(4.1)
这个的结果就是5
floor:取下限,实际就是给你抹除小数点儿后面所有的数字,无论你小数点儿后面有多少位
1 select FLOOR(5.8731628316823)
得出的结果就是 5 ,不管你小数点有多少位
round:四舍五入,跟小学里讲的一样,只不过round后面有限制,当然是自己设置的限制
打个比方 round(price,5)这个意思就是在某个表里面的price列,算出price列里值类型数据保留小数点儿后面5位,但是四舍五入的是小数点儿后面第6位
1 select ROUND(price,1) from car
喏,自己对比下就知道了
PI:其实就是圆周率,没什么大惊小怪的,但是记得必须要这样写 PI(),后面记得加英文状态下的括号,但是里面还不能有参数,否则SQL就会给你报错
1 select PI()
字符串函数:(upper、lower、ltrim、rtrim、replace()、substring()、select lift/right、len)
upper:大写,把所有的英文大写
1 select UPPER(name) from car
先看下原图
select name from car
上面是原始状态,现在咱们开始给name这一列的英文全部大写
1 select UPPER(name) from car
lower:把所有的英文字母编程小写,不多赘述,下一个
LTRIM:去掉左边的空格
1 select LTRIM(' a a ')
显示的就是这个样子:(a a )
RTRIM:去掉右边的空格
1 select LTRIM(' a a ')
显示的样子:( a a)
有的人会想,怎么把中间的空格去掉,接下来睁大你们的眼睛,魔术来了,好了,不装X了,开始
1 select REPLACE('ccccaccccacccc','cccc','')
显示的结果就是(aa)
substring:截取,这个跟前面的C#帖子里面讲的街区字符串用法一样,唯一的区别就是在SQL里面的字符串是从1开始,而在C#里面的字符串是从0开始,这个需要特别注意
1 select substring('asdsadasd',1,3)
括号里面的内容剖析
substring('字符串',索引,需要截取的字符串的长度)
如果说咱们遇到的字符串只需要截取前几位,那上面的方法就变得很繁琐,教大家一个简单的办法,看下面
1 select right ('asdadasda',3) 2 3 4 select LEFT ('asdsadsadasda',7)
left 截取从左边第一位开始,截取7位
right 就是从右边截取3位
select left/right ('字符串',需要截取的位数)
LEN长度
1 select LEN('kuehfojaoisdfojdadosj')
显示的结果就是长度,括号里面这个字符串的长度,21