zoukankan      html  css  js  c++  java
  • MySQL学习(四)查询

    一、group_concat()函数。把groupby的分组中字段数据组合显示出来

      select s_id , GROUP_CONCAT(要显示的字段名)  from table group by 分组字段

    二、group_by 与 Having 结合 :根据条件筛选分组条件

      select s_id ,group_concat(f_name) as names from fruits group by a_id having count(f_name) > 1

      Having  与 where 区别:

    1. 关键字用来在数据分组之后进行分组筛选。
    2. where在分组之前筛选记录,且where排除掉的数据不会出现在分组的结果中

    三、多字段分组

      使用group by进行分组,指定多个字段,可以按照层次分组,先根据第一个字段进行分组,然后在对分组根据第二根第二个字段进行分组。

    四、使用LImit限制查询结果的数量

      Limit [位置偏移量],行数

      偏移量可以不指定,行数指返回的数据的条数

      select * from frults limit 4:返回查询结果的前4条数据

      select * from frults limit 5,3 :返回查询结果偏移量为5(从第六条数据开始)后的三条数据

    五、内连接查询

      select * from frults ,suppliers where frults.s_id = suppliers.s_id

      select * from frults inner join suppliers on frults.s_id = suppliers.s_id

      两种方式一样的

    六、自连接查询

      查询中设计的表示在物理上同一张表,逻辑上是两张表。自连接是一种特殊的内连接

      select  f1.s_id , f2.s_id from frults as f1 ,frults as f2 where f1.s_id = f2.s_id and f1.s_id = "a1"

    七、左外连接查询

      包括左表的所有行,如果右表没有匹配行就会为NUL

      select * from frults left outer join suppliers on frults.s_id = suppliers.s_id

    八、右外连接查询

      包括右表的所有行,如果左表没有匹配行就会为NUL

      select * from frults right outer join suppliers on frults.s_id = suppliers.s_id

    九、ANY,SOME只要满足其中一个就返回true

    十、ALL 所有条件都满足才返回True

    十一、exists关键字:如果子查询返回结果不为空,则会进行主查询,否则不会进行主查询,可以在where中使用

      

  • 相关阅读:
    ios学习-2015-7-9
    ios学习-2015-7-8
    ios学习-2015-7-7
    ios学习-2015-7-6
    ios学习-2015-7-5
    ios学习-2015-7-3
    ios学习-2015-7-2
    Selenium学习笔记之003:Web UI自动化知识点整理 分类: Selenium 2015-07-14 14:19 3人阅读 评论(0) 收藏
    Selenium学习笔记之002:IDE录制和回放 分类: Selenium 2015-07-12 17:13 19人阅读 评论(0) 收藏
    Selenium学习笔记之002:IDE录制和回放
  • 原文地址:https://www.cnblogs.com/SunQi-Tony/p/9936086.html
Copyright © 2011-2022 走看看