• MySQL基础入门学习【7】查询表达式解析 SELECT


    1. 查找记录: 

     SELECT select_expr [,select_expr...]

    [

    FROM table_references

    [WHERE where_condition]

    [GROUP BY {col_name | postion}  [ASC|DESC],...]

    [HAVING where_condition]

    [ORDER BY {col_name | expr | position} [ASC | DESC],...]

    [LIMIT { [offset,] row_count | row_count OFFSET offset } ]

    ]

    计算表达式的结果

    1) 查询表达式: select_expr

        每一个表达式表示想要的一列,必须有至少一个;

        多个列之间以英文逗号分隔;

        星号(*)表示所有列。 tbl_name.* 可以表示命名表的所有列;

        查询表达式可以使用 [ AS ] alias_name 为其赋予别名;

        别名可用于GROUP BY , ORDER BY 或HAVING 子句。

     

    也可以让当前的数据列的排列顺序和原表中不一样

    SELECT 语句查询表达式的顺序将影响着结果的顺序

    以后使用多表连接时,两张不同的表可能存在相同的字段,如果直接写字段名的话,则分不清到底属于哪张数据表

    有些时候某些字段的名字特别长,可能不太容易记忆,我们可以为其赋予别名。

    字段的别名也将影响到以后的结果集的字段名。

    AS 可以省略:(一般情况下还是要书写AS 比较好)

    (2)where 语句进行条件查询:

       条件表达式: 对记录进行过滤,如果没有指定WHERE 子句,则显示所有记录;

              在 WHERE 表达式中,可以使用MySQL支持的函数或运算符。

    (3)group by 语句对查询结果分组:

        [GROUP BY {col_name | position} [ ASC | DESC],...]  

        既可以指定列的列名(常用),也可以指定列的位置(它在select语句中字段的位置,从1开始);升序(默认)或降序排列;多个分组条件中间以逗号做分割。

       

    (4) having语句设置分组条件

       只对某一部分记录做分组: [HAVING where_condition] 

           一定要保证分组的条件要么为一个聚合函数(max/min/avg/sum/count...,永远只有一个返回结果),要么这个字段必须出现在当前SELECT语句中。

           (if you got some expression#1 error, see https://blog.csdn.net/fansili/article/details/78664267 )

    (5) order by 语句对查询结果排序: [ORDER BY {col_name | expr | position} [ASC | DESC],...]

    同时以两个字段排序:首先先看第一个字段能否排出想要的结果,如果可以则直接忽略第二个字段,否则再遵守第二个字段甚至第三个字段等等:

    (6) limit语句限制查询结果返回的数量:

            [LIMIT { [ offset,] row_count | row_count OFFSET offset} ]  

      第一种形式的语法结构比较常见

      默认情况下返回所有的你要查找到的结果。

      以后利用PHP进行分页时就会用到这个语句进行分页效果的实现。offset公式为(当前页码-1)*每页所显示的记录数。

    从第1行开始返回,返回2条记录。

    从第3条记录开始,返回2条。记录是从0开始编号的!!!

    注意,我们例子中的id号和结果集中的排列顺序没有任何的联系,只要它排在结果集中的第一个位置,它就对应是0;第二个位置就对应是1...,id号是100 还是1000都没有任何关系。

    [参考链接]   https://www.imooc.com/learn/122 

  • 相关阅读:
    configure错误列表供参考
    php和AJAX用户注册演示程序
    php中文汉字截取函数
    阻止a标签点击跳转刷新
    js日期插件
    apache 开启Gzip网页压缩
    查询文章的上下篇Sql语句
    thinkphp简洁、美观、靠谱的分页类
    thinkphp自定义模板标签(二)
    thinkphp自定义模板标签(一)
  • 原文地址:https://www.cnblogs.com/jade-91/p/8681664.html
Copyright © 2020-2023  润新知