黑马程序员sql 函数使用下篇
来源:互联网 发布:mac隐藏dock快捷键 编辑:程序博客网 时间:2024/05/16 18:17
---------------------- Windows Phone 7手机开发、.Net培训、期待与您交流! -----------------
数字函数(收集)//一般做报表时候用
abs()求绝对值
ceiling()舍入到最大整数 (汉字意味天花板) ceiling(3.33)=4 ceiling(-3.2)=3
floor()舍入到最小整数(汉字意味地板)
round(number,精度)四舍五入 即舍入到离我最近的数
字符串函数
len(字符串) ;//计算字符串的长度 select name,len(name) from users
lower() upper() //转换 小写 、大写
ltrim() //去掉字符串左侧的空格
rtrim()//去掉字符串右侧的空格 ltrim(rtrim(" s "))
substring(string,start_position,length)//string主字符串,start_position为子字符串在主字符串中开始位置,length为子字符串的最大长度
如:select substring("abcdefg",2,4)
日期函数
getdate() 获取当前日期
dateadd(datepart,number,date) //计算增加以后的日期 参数date为待计算的日期,参数Number为要增加的量,参数datepart为以这个计量单位开始加 Number个量
datepart 年,季度,周,天,小时,秒 等片段
dateadd(month,-8,getdate())
datediff(datepart,startdate,enddate)//计算两个日期之间的差额 以datepart这个时间格式表示
员工入职时间select name,indate,datediff(year,indate,gatedate()) from users
某年入职员工个数select datediff(year,indate,gatedate()) 入职年数 ,count(*) 个数 from users group by datediff(year,indate,gatedate())
datepart(datepart,date)//返回一个日期的特定部分
当前的年份 select datepart(year,getdate())
每年入职员工个数select datepart(year,indate) 年,count(*) 个数 from users group by datepart(year,indate)
类型转换函数
cast(被转换表达式 as 数据类型)//select cast('2008-1-2' as datetime )
convert(数据类型,被转换的数据表达式)
空值处理函数
isnull(列名,要替代的值) //如果列名为空则用 要替换的值替换 ,否则还是列名的值//select isnull(name,佚名) from users
索引
创建方法:在表设计器中点击右键->选择 索引/健->添加->在列中选择索引包含的列
优缺点:使用索引能够提到查询效率, 但是索引是占用空间的 ,它是在磁盘上重新建了一张表 把索引字段放到里面了 所以查询比较快 而且在添加、更新、删除数据的时候也要同时更新索引表 因此针对 insert update delete 这样的语句速度是慢的,只是在经常检索的字段上如where语句条件 上创建索引
注意:并不是创建了索引查询就会快的 例如针对 (*)这样的查询,任然还要全表扫描,有如 like 函数 类型转换等都是不怎么快的
join
inner join ,left join,right join
select o.billno,c.name,c.age
from t_order as o join t_customer as c on o.custemid=c.id
例如:要求显示出年龄大于15的客户购买的订单号,客户姓名,客户年龄
select o.orderid, c.name,c.age from t_custemers as c join t_order as on
o.custemersid=c.id where c.age>15
显示年龄大于平均年龄的顾客买的订单
select o.orderid,c.name from t_custemers as c join t_orders as 0 on o.custenmsid=c.id where c.age>(select avg(age) from t_custemers)//为什么不能直接用avg(age) 还要用子查询 这些函数只能放在from 之前用的
---------------------- Windows Phone 7手机开发、.Net培训、期待与您交流! ----------------------详细请查看:http://net.itheima.com/
- 黑马程序员sql 函数使用下篇
- 黑马程序员SQL函数
- 黑马程序员_java高新技术-下篇
- 黑马程序员——GUI2:下篇
- 黑马程序员——SQL 函数
- 黑马程序员-SQL中的一些常见函数
- 【黑马程序员】SQL Server DATEDIFF() 函数
- 黑马程序员之SQL学习笔记: SQL函数总结
- 黑马程序员之SQL学习笔记: SQL排列函数
- 黑马程序员_JavaScript函数的基本使用
- 黑马程序员——Java语言基础下篇
- 黑马程序员——IO流(下篇)
- 黑马程序员--java基础语法下篇(day03)
- 黑马程序员 SQl语句-聚合函数 数据排序 模糊匹配
- 黑马程序员 SQL语句Case函数相关介绍 索引器
- 【黑马程序员】SQL入门(2)MSSQL Server函数
- 黑马程序员--学习笔记之SQL基础语句及函数
- 黑马程序员-- .Net学习日记——SQL函数
- jsp标签
- Postgres 数据库并发控制配置
- CDC详解
- 如何解决C盘根目录无法创建或写入文件
- poj 1177 线段树+扫描线 求矩形交的周长
- 黑马程序员sql 函数使用下篇
- 正确认识C语言在当代的地位和作用
- 通过bean节点手工注入依赖对象
- 短路与*非短路与 _ 短路或&非短路或
- VisualStudio2008+CUDA4.1完美配置
- iOS SDK: 使用NSUserDefaults
- 访问图像像素GetSet2D
- Treehouse每周上四天班还如此成功 让别的创业公司情何以堪
- 抽象类与抽象方法,接口