MySQL查询语句

本文详细介绍了MySQL的查询语句,包括查询准备、条件查询、排序、聚合函数、分组、分页、连接查询、自关联和子查询。内容涵盖创建数据库、数据表、数据筛选、排序规则、统计函数、分组统计、分页查询、多表连接和嵌套查询等核心概念。
摘要由CSDN通过智能技术生成

目录

一、查询准备
二、条件查询
三、排序
四、聚合函数
五、分组
六、分页
七、连接查询
八、自关联
九、子查询

一、查询准备

1、创建数据库、数据表

  • 创建数据库
    create database python_niubiqigai charset=utf8;
  • 使用数据库
    use python_niubiqigai
  • 创建students表
    create table students(
        id int unsigned primary key auto_increment not null,
        name varchar(20) default '',
        age tinyint unsigned default 0,
        height decimal(5,2),
        gender enum('男','女','中性','保密') default '保密',
        cls_id int unsigned default 0,
        is_delete bit default 0
    );
    
  • 创建classes表
    create table classes (
        id int unsigned auto_increment primary key not null,
        name varchar(30) not null
    );
    

2、准备数据

  • 向students表中插入数据

    insert into students values
    (0,'小张',18,180.00,2,1,0),
    (0,'小王',18,180.00,2,2,1),
    (0,'小白',29,185.00,1,1,0),
    (0,'小黑',59,175.00,1,2,1),
    (0,'小丁',38,160.00,2,1,0),
    (0,'小李',28,150.00,4,2,1),
    (0,'小周',18,172.00,2,1,1),
    (0,'小城',36,NULL,1,1,0),
    (0,'小花',27,181.00,1,2,0),
    (0,'小芳',25,166.00,2,2,0),
    (0,'小薇',33,162.00,3,3,1),
    (0,'小赵',12,180.00,2,4,0),
    (0,'小郭',12,170.00,1,4,0),
    (0,'小谢',34,176.00,2,5,0);
    
  • 向classes表中插入数据
    insert into classes values (0, "物理1班"), (0, "物理2班");

  • 查询所有字段
    select * from 表名;
    例:
    select * from students;

  • 查询指定字段
    select 列1,列2,... from 表名;
    例:
    select name from students;

  • 使用 as 给字段起别名
    select id as 序号, name as 名字, gender as 性别 from students;

  • 可以通过 as 给表起别名
    – 如果是单表查询 可以省略表明
    select id, name, gender from students;
    – 表名.字段名
    select students.id,students.name,students.gender from students;
    – 可以通过 as 给表起别名
    select s.id,s.name,s.gender from students as s;

3、消除重复行

  • 在select后面列前使用distinct可以消除重复的行
    select distinct 列1,... from 表名;
    例:
    select distinct gender from students;

二、条件查询

使用where子句对表中的数据筛选,结果为true的行会出现在结果集中

  • 语法如下:
    select * from 表名 where 条件;
    例:
    select * from student
评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值