zoukankan      html  css  js  c++  java
  • MySQL查询语句

    基本查询:

    1) 查询时加一条固定字段, 例如Student信息后面添加一个班级('普通班')

      select id, name, '普通班' as 班级 from Student

    2) 查询时去重, 例如查询学生的居住地

      select distinct adress from table_name  或者 select distinct(adress) from table_name

    3) 查询时合并某几列的数值, 例如显示总成绩

      select name, (English + Math)  总成绩 from table_name

    条件查询: (where)

    1) 逻辑条件: 'and'与  'or'或

    2) 比较: '>'  '<'  '='  '>='  '<='  '<>'不等于   'between xx1 and xx2' <==>  '>= xx1 and <= xx2'

    3) 判断空(null vs 空字符串): 'is null' / 'is not null' / '=''' / '<>'''

    4) 模糊判断: 'like'  %无长度限制  _长度1

    聚合函数: count() sum() max() min() avg() 统计某一列的属性

     

    查询时排序: order by column_name [asc正序/desc反序]

    分组查询: group by column_name 

    分组后筛选: having + 聚合函数或者其他

     

    分页查询: select * from table_name limit line_index, line_num

      例如: 查询时只显示4条信息,从第4条开始显示

         select * form table_name limit 3, 4

     

    连接查询:

      内连接:只显示能匹配到的

          SELECT NAME 姓名, address 宿舍地址 FROM employee, dormitory WHERE employee.dorm_id = dormitory.id;

          SELECT NAME 姓名, address 宿舍地址 FROM employee INNER JOIN dormitory on employee.dorm_id = dormitory.id;

      左连接: 以左边的表为基准,从右边表选择对应的数值添加进新列

          SELECT address, NAME FROM dormitory d LEFT JOIN employee e ON d.id = e.dorm_id;

      右连接:同左连接类似,只不过换个位置

      全连接:

      自连接:SELECT e.name 员工, b.name 上司 FROM employee e LEFT JOIN employee b ON e.bossId = b.id;

  • 相关阅读:
    centos7 安装 nginx
    centos7 安装 mysql
    centos7 安装 python3.7
    nginx添加到系统命令中
    Java多线程6-线程让步
    Java多线程5-线程等待与唤醒
    Java多线程4-synchronized关键字
    Java多线程3-Thread中start和run方法的区别
    Java多线程-2-常用的实现多线程的两种方式
    java多线程1-基础概念
  • 原文地址:https://www.cnblogs.com/webyyq/p/6501162.html
Copyright © 2011-2022 走看看