MySQL之表的查询

表的查询

语法:

SELECT
[DISTINCT] {* | {column [, column] ...}
[FROM table_name]
[WHERE ...]
[ORDER BY column [ASC | DESC], ...]
LIMIT ...

先创建一个表:
在这里插入图片描述

1.查找所有列

在这里插入图片描述
一般不建议这样写。

2.查找指定列

在这里插入图片描述

3.查询字段为表达式

在这里插入图片描述

4.别名

为查询结果中的列指定别名,表示返回的结果集中,以别名作为该列的名称.

语法:

select column [AS] alias_name [...] from table_name;

在这里插入图片描述

5.针对查询结果进行去重

使用distinct关键字对某列数据进行去重:
在这里插入图片描述

6.排序:

使用order by关键字对数据进行排列:

语法:

-- asc 为升序(从小到大)
-- desc 为降序(从大到小)
-- 默认为 asc
select ... form table_name [where ...]
order by column [asc|desc], [...];

(1)没有 order by子句的查询,返回的顺序是未定义的,永远不要依赖这个顺序;

(2)null 数据排序,视为比任何值都小,升序出现在最上面,降序出现在最下面;
在这里插入图片描述

(3)使用表达式及别名排序
在这里插入图片描述

(4)可以对多个字段进行排序,排序优先级随书写顺序

7.条件查询where

比较运算符:

运算符说明
>, >=, <, <=大于,大于等于,小于,小于等于
=等于,NULL 不安全,例如 NULL = NULL 的结果是 NULL
<=>等于,NULL 安全,例如 NULL <=> NULL 的结果是 TRUE(1)
!=, <>不等于
BETWEEN a0 AND a1范围匹配,[a0, a1],如果 a0 <= value <= a1,返回 TRUE(1)
IN (option, …)如果是 option 中的任意一个,返回 TRUE(1)
IS NULL是 NULL
IS NOT NULL不是 NULL
LIKE模糊匹配。% 表示任意多个(包括 0 个)任意字符;_ 表示任意一个字符
AND多个条件必须都为 TRUE(1),结果才是 TRUE(1)
OR任意一个条件为 TRUE(1), 结果为 TRUE(1)
NOT条件为 TRUE(1),结果为 FALSE(0)

注意:

  1. WHERE条件可以使用表达式,但不能使用别名;
  2. AND的优先级高于OR,在同时使用时,需要使用小括号()包裹优先执行的部分.

案例:

  • 基本查询:
    在这里插入图片描述

  • and与or:
    在这里插入图片描述

  • 范围查询:
    1.between…and…
    在这里插入图片描述

2.in
在这里插入图片描述

  • 模糊查询:LIKE
    在这里插入图片描述
    在这里插入图片描述

  • NULL 的查询:IS [NOT] NULL
    在这里插入图片描述

8.分页查询

语法:

--0 开始,筛选 n 条结果
select ... from table_name [where ...] [order by...] limit n;
-- 从 s 开始,筛选 n 条结果
select ... from table_name [where ...] [order by ...] limit s, n;
-- 从 s 开始,筛选 n 条结果,比第二种用法更明确,建议使用
select ... from table_name [where ...] [order by ...] limit n offset s;

案例:
在这里插入图片描述

  • 1
    点赞
  • 7
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值