MySQL简记

本文详细介绍了MySQL的SQL查询语法结构和运行顺序,包括select、where、order by、limit等核心子句的使用,以及聚合函数、分组、条件判断函数等。还探讨了数据去重、排序、分页、条件筛选、数据聚合等多个实用技巧,适用于数据分析师和数据库管理员进阶学习。
摘要由CSDN通过智能技术生成

SQL查询语法结构和运行顺序:

语法结构:select - from - where - group by - having - order by - limit

运行顺序:from - where - group by - having - order by - limit - select

1、select

  • 基础查询select单列&多列&所有列&别名应用
    • select 字段名1, 字段名2 from 表名
    • select * from 表名
    • select 字段名 as 别名, 字段名 别名 from 表名(as可省略)
  • select中使用distinct去重
    • 在select核心语句中加distinct关键字,可以对最后显示的数据去重;
    • 在select distinct后加多个字段时,是对重复的行数据进行去重;
    • 注:显示多个字段时,distinct无法对单一字段去重,只能对这几个字段组成的行中重复的行数据去重,所以distinct本质是加在select后,而不是字段前。
    • select distinct 字段名1, 字段名2 from 表名
  • select中计算字段的运用
    • 在select的核心语句中,可以对数据库表中有的字段进行计算形成新的字段
    • select 字段名, 计算字段 from 表名

2、where

  • select 字段名 from 表名 where 表达式:通过表达式筛选出符合查询条件的行数据
  • where 表达式中最常用的是运算符
    • 比较运算符:=、>、<、>=、<=、<>、!=
    • 逻辑运算符:and、or和not
      • not一般和与其他连用例如not in,用于条件取反
      • and和not可以一起使用,但是默认and优先级高于or,可以使用括号来界定优先级
      • between and,用于查询两个值之间范围的值(包含这两个值),这些值主要是数据和日期
        • 如果想要去掉某个边界可以使用英文符号(!=)来去除
      • in,用于查询指定条件范围内的数据,一般为in (xxx,xxx,......),用括号将条件括起来
        • is null,用于查询空值(NULL),空值不同于0,也不同于null字符串 =‘null’
          • 空值
          • null字符串
        • eg for in(xxx,xxx,......):
          • 查询瑞典、挪威、丹麦的国家名和人口
            SELECT name, population FROM world where name='Germany' or name='Norway' or name='Denmark'
            或者:SELECT name, population FROM world where name in ('Germany', 'Norway', 'Denmark')
  • 模糊查询like
    • select 字段名 from 表名 where 字段名 like '通配符+字符'
    • 跟在字符后面进行数据过滤常用的通配符有%和_。%用来匹配多个字符,_仅能匹配单个字符
    • eg:
      • 查询既包含有所有元音字母(a,e,i,o,u),同时国家名中没有空格的国家,最后显示他们的名字
        • SELECT name FROM world where name like '%a%' 
          and name like '%e%' 
          and name like '%i%' 
          and name like '%o%' 
          and name like '%u%' 
          and na
  • 0
    点赞
  • 4
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值