mysql 第二天

上一篇 / 下一篇  2017-12-02 09:03:55 / 天气: 晴朗 / 心情: 高兴

一:
回顾一天所学知识,延续第一天内容
1、str_to_date(‘日期字符串’,‘日期格式’)
MySQL日期格式:
序号  格式符  功能       格式符  功能
====================================================================
1%Y   代表四位的年份   %y    代表两位的年份
====================================================================
2  %m   代表月,格式(01...12)   %c 代表月 格式(1...12)
====================================================================
3       %d   代表日
====================================================================
4%H   代表24小时制   %h     代表12小时制
====================================================================
5%i   代表分钟 格式(00..59)
====================================================================
6%S或%s 代表秒,格式(00...59)

2、date_format
作用:将‘日期类型’转换为特定格式的‘日期字符串’类型
用法:date_format(日期类型数据,‘日期格式’)


二、
分组函数/聚合函数/多行处理函数
1、常用
 =======================
 sum求和
 =======================
 avg平均值
 =======================
 max 取最大值
 =======================
 min 取最小值
 =======================
 count取得记录
 =======================
2、注意点
分组函数自动忽略空值,不需要手动增加where条件排除空值
分组函数不能直接使用在where关键字后面

3、去重distinct
作用:将查询结果中某一字段的重复记录去除掉
用法:distinct 字段名或distinct 字段名1,字段名2....
distinct 字段名A:去除与字段名A相同的记录
distinct字段名A,字段名B:去除与字段名A和字段名B同时相同的记录
注意:distinct只能出现在所有字段最前面,后面如果有多个字段及为多字段联合去重
4分组查询(group by)
1、作用:通过哪个或哪些字段进行分组
   用法:group by 字段名
select
分组字段或分组函数(只允许出现这两种语句)
from 
表名
group by
字段名
having过滤条件 ,必须配合group by 才可使用
where用在group by 之前,having用在group by 之后

总结select
一个完整的sql语句如下:
select
xxx
from
xxx
where
xxx
group by
xxx
having
xxx
order by
xxx



连接方式分类:
内连接:省略关键字:inner
等值连接
查询出员工所对应得部门名称
select
e.ename,d.dname
from
emp e
inner join
dept d 
on
e.deptno = d.deptno
非等值连接
查询出员工薪水所对应的薪水等级:显示员工名称,薪水,薪水等级
select 
e.ename,e.sal,s.grade

from 
emp e
join 
salgrade s
on 
s.sal between s.losal and s.hisal;
自连接:
我们可以把一张表看成两张表使用
外连接:定义:A表和B表能够完全匹配的记录查询出来之外(内连接),将其中一张表的记录无条件的完全    查询出来,对方表没有匹配的记录时,会自动模拟出null值与之匹配;
       注意:外连接的查询结果条数>=内连接的查询结果条数
左连接
定义:包含左边表的全部行(不管右边的表是否存在与他们匹配的行),以及右边表中     全部匹配的行
右连接
定义:包含右边表的全部行(不管右边的表中是否存在与它们匹配的行),以及右边表     中全部匹配的行

多表查询:
多张表进行连接的语法格式:
select
xxx
from
A表
join
B表
on
连接条件1
jion
C表
on
连接条件2


子查询:select语句嵌套select语句,放在where后面
       from后嵌套,把select查询的结果的表当成临时表
       union 合并相加结果集(要求字段个数相同,具有相同意义)

limit使用:
作用:(只在MySQL中起作用)获取一张表中前几条或中间某几行数据
用法:limit起始下标m,长度n
m:记录开始的index,默认从0开始,表示第一条记录
n:指从第m+1条开始,取n条
     limit可以实现分页功能

TAG:

 

评分:0

我来说两句

日历

« 2024-04-29  
 123456
78910111213
14151617181920
21222324252627
282930    

我的存档

数据统计

  • 访问量: 2072
  • 日志数: 4
  • 建立时间: 2017-12-01
  • 更新时间: 2017-12-03

RSS订阅

Open Toolbar