zoukankan      html  css  js  c++  java
  • MYSQL语法篇之"WHERE"子句

    MYSQL语法篇之"WHERE"子句

    本章来介绍MYSQL里面查询功能强大的WHERE子句。

    1. WHERE子句的特点

    2. WHERE子句的注意事项

    3. WHERE子句的使用


    1. WHERE子句的特点:

    过滤记录

    其实这一句话的解释有两个方面:

    (1)过滤记录=看不到不想看的数据

    (2)过滤记录=看到想看的数据

    表面上看这两句话是一个意思,但是这里面却包含了WHERE子句的语法理解:

    举例:

    select * from table_name where column_name=value;

    这一个语句中你会发现where子句后面跟着的内容是column_name=value,那么查询出来的是column=value的所有信息。where子句的官方定义是过滤记录,但是我们在使用where子句的时候输入的内容确是想查询的记录。 这就是where记录的两个方面的理解的不同。

    1. WHERE子句的注意事项:

    这是一个关键点,是WHERE子句学习的关键地方。

    where子句当中只能加入字段名和运算符,不能加入聚合函数。如果想加入聚合函数,需要使用到子查询的只是

    上面这两段话重点要去理解这么一些知识点:

    (1)字段名

    (2)运算符

    (3)聚合函数

    (聚合函数在SQL语句当中是一个高级的知识,我会放在后面的笔记当中进行详细的说明与总结,把常用的一些聚合函数挑出来细说。)

    在前面的总结当中已经给大家说了什么是字段名,如果有小伙伴还不清楚的话可以去查看前面的随笔。后面我们重点去了解什么是运算符。

    1. 什么是运算符?

    运算符其实就是我们小学数学当中认识的一些简单的符号。用来判断数据的,计算机也能通过运算符来过滤数据。

    常见的运算符:

    1、等于:=

    2、不等于:<> 或者 !=

    3、大于:>

    4、小于:<

    5、小于等于:<=

    6、大于等于:>=

    上面六种就是数据库当中查询表里内容时常用的六种运算符,每一种运算符在数据库当中可以组合使用,但是要注意:

    数据库当中组合使用运算符的时候不能与子查询组合使用

    什么意思呢?举一个实例:

    题:查询所有学生分数>60的学生人数。

    分析题目:

    主语:人数---查询人数。

    条件:分数大于60。

    写出语句:

    select count(*) from table_name where 分数>60;

    这里要注意的是,我上面写的加粗的话:

    错误的语法是:

    select count(*) from table_name where 分数>分数=(select 分数 form table_name where 分数=60);

    这一句用了子查询,但是因为存在运算符>和=号所以计算机在查询时候会先执行where子句当中的子查询得出结果再在where子句里面从左到右运行得出结果作为外循环select的过滤条件。

    所以这句语句得不出结果。

    思考:那么为什么说运算符可以组合使用?

    事实上只要不加入子查询,运算符基本上就可以组合使用。

    如:从学生表中查询所有学生的信息并使他们的成绩加五分

    语法:

    select *,score=score+5 from student;

    select * from student where score=score+5;

    上面两个语句的语法都是正确的,但是得到的结果不正确。

    第一种语法,会出现四个字段名,score+5会作为一个新的字段名出现在结果表中,score+5的结果为原表中的score的值+5。

    第二种语法,出现的结果是Empty,where子句后面的内容会被作为条件再在表中查询出满足条件的信息。(这里值得注意的是:score=score+5是已经被执行出结果以后的过滤条件。如果语句无法执行会报错)

  • 相关阅读:
    用 Go 实现一个 LRU cache
    【转】入行软件测试,零基础拿OFFER
    【转】IntelliJ idea 高效使用教程,一劳永逸!
    python连接Oracle报错DPI1047
    【转】Pycharm快捷键设置(鼠标滚动控制字体大小)
    【转】Ubuntu:命令行安装可视化界面
    【转】Windows 如何在cmd命令行中查看、修改、删除与添加环境变量
    VAR多变量预测
    windows进程管理
    git关闭filemode
  • 原文地址:https://www.cnblogs.com/JunkingBoy/p/14015016.html
Copyright © 2011-2022 走看看