美文网首页
MySQL查询

MySQL查询

作者: 筱土豆儿 | 来源:发表于2018-06-12 16:25 被阅读8次

    一、简介

            查询所有字段

            select * from 表名;

            例:

             select * from students;

        2、查询指定字段

            在select后面的列名部分,可以使用as为列起别名,这个别名出现在结果集中

            select 列1,列2,... from 表名;

            例:

            select id,name,gender from students;

        3、消除重复行

            在select后面列前使用distinct可以消除重复的行

            select distinct 列1,... from 表名;

            例:

            select distinct gender from students;

    二、条件

        1、使用where子句对表中的数据筛选,结果为true的行会出现在结果集中

            语法如下:

            select * from 表名 where 条件;

            例:

            select * from students where id=1;

        2、where后面支持多种运算符,进行条件的处理

            2.1、比较运算符

            2.2、逻辑运算符

            2.3、模糊查询

            2.4、范围查询

            2.5、空判断

            2.6、比较运算符

            2.7、等于=

            2.8、大于>

            2.9、大于等于>=

            2.10、小于<

            2.11、小于等于<=

            2.12、不等于!=或<>

            例1:查询编号大于3的学生

            select * from students where id>3;

            例2:查询编号不大于4的科目

            select * from subjects where id<=4;

            例3:查询姓名不是“黄蓉”的学生

            select * from students where name!='黄蓉';

            例4:查询没被删除的学生

            select * from students where isdelete=0;

        3、逻辑运算符

            and  or  not

            例5:查询编号大于3的女同学

            select * from students where id>3 and gender=0;

            例6:查询编号小于4或没被删除的学生

            select * from students where id<4 or isdelete=0;

        4、模糊查询

            like

            %表示任意多个任意字符

            _表示一个任意字符

            例7:查询姓黄的学生

            select * from students where name like '黄%';

            例8:查询姓黄并且名字是一个字的学生

            select * from students where name like '黄_';

            例9:查询姓黄或叫靖的学生

            select * from students where name like '黄%' or name like '%靖';

       5、范围查询

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

            例10:查询编号是1或3或8的学生

            select * from students where id in(1,3,8);

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

            例11:查询编号为3至8的学生

            select * from students where id between 3 and 8;

            例12:查询学生是3至8的男生

            select * from students where id between 3 and 8 and gender=1;

        6、空判断

            注意:null与''是不同的

            判空is null

            例13:查询没有填写地址的学生

            select * from students where hometown is null;

        7、判非空is not null

            例14:查询填写了地址的学生

            select * from students where hometown is not null;

            例15:查询填写了地址的女生

            select * from students where hometown is not null and gender=0;

        8、优先级

            优先级由高到低的顺序为:小括号,not,比较运算符,逻辑运算符

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

    相关文章

      网友评论

          本文标题:MySQL查询

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