美文网首页
2018-04-01

2018-04-01

作者: 北漠_a59e | 来源:发表于2018-04-01 19:19 被阅读0次

    其中有一个查询,这次就较为全面的写一下MySQL的查询

    查询的基本语法为:

    select  *  from  表名;

    在select后面列使用distinct可以消除重复行,语法为:

    select  distinct  字段名  from  表名;

    使用where字句对表中的数据筛选,结果为true的行会出现在结果集中,语法为:

    select  *  from  表名  where  条件;

    比较运算符:

    等于 =

    大于 >

    大于等于  >=

    小于 <

    小于等于 <=

    不等于  != 或 <>

    查询标号不大于4的科目

    select  *  from  表名  where  id <= 4;

    查询姓名不是张三的学生

    select  *  from  表名  where  name != "张三";

    查询没被删除的男生

    select  *  from  表名  where  isdelete=0  and  sex=1;

    逻辑运算符:

    and     or   not 

    查询编号大于3的女同学

    select  *  from  表名  where  id>3  and  sex=0;

    模糊查询:

    like  

    %表示任意多个任意字符

    _表示一个任意字符

    查询姓黄的学生:

    select  *  from  表名  where  name  like '黄%';

    范围查询:

    in 表示在一个非连续的范围内

    between...and...   表示在一个连续的范围内

    优先级:

    小括号,not,比较运算符,逻辑运算符

    and比or选运算,如果同时出现并希望先算or,需要结合()使用

    聚合函数:

    count()表示计算总行数,括号中写星或列名,结果是相同的

    max(列)  表示求此列的最大值

    min(列)   表示求此列的最小值

    sum(列)  表示求此列的和

    avg(列)   表示求此列的平均值

    分组:

    语法:select 列1,列2,聚合... from 表名 group by 列1,列2,列3...

    分组后的数据筛选:

    select  列1,列2,聚合...from  表名

    group  by   列1,列2,列3...

    having  列1,....聚合...

    having后面的条件运算符与where的相同

    对比where与having

    where 是对from 后面指定的表进行数据筛选,属于对原始数据的筛选

    having是对group  by的结果进行筛选

    排序:

    语法为下

    slelect   *  from  表名

    order  by  列1  asc(从小倒下排列,即升序)

    select  *  from  表名

    orser  by  列1  desc(从大到小排列,即降序)

    分页

    select *  from  表名

    limit  start,count

    从start开始,获取count条数据

    start索引从0开始

    相关文章

      网友评论

          本文标题:2018-04-01

          本文链接:https://www.haomeiwen.com/subject/njsacftx.html