【MySQL】基本修改操作(含外键),各种“花式”查询

博客围绕数据库操作展开,涵盖创建表、一次性插入多行数据、修改表等内容。修改表包括添加唯一性、插入新属性、修改属性名等操作,还介绍了外键约束的添加、更新与删除。此外,还列举了各种‘花式’查询,如比较查询、分组查询、多表关联查询等。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

创建表

在这里插入图片描述

可使用“desc student”查看结
在这里插入图片描述

一次性插入多行数据

mysql> insert into student(age,name,info,birthday)
-> values
-> (22,'zhoujielun','aiyo,bucuoo','2019-07-01'),
-> (22,'kunling','i love Jay','2019-07-02');

查看结果:

mysql> select * from student

在这里插入图片描述

修改表

1. 给表中name属性添加唯一性

alter table student modify name char(20) unique;

在这里插入图片描述

2. 表中插入一列新的属性

mysql> alter table student add column habit varchar(100);

在这里插入图片描述

3. 修改表中属性名

#将name改成stuname,并且将 char(20)改为carchar(20)
mysql> alter table student change column name stuname varchar(20);

在这里插入图片描述

4. 增加普通索引

将频繁查找的字段,写入二叉树,实现快速查找

mysql> alter table student  add index(habit);

在这里插入图片描述

5. 删除一个属性

mysql> alter table student drop column habit;

6. 改表名

mysql> alter table student rename stu;

在这里插入图片描述

7. 外键约束

  1. 新键表时添加外键属性
    在这里插入图片描述

  2. 在已存在表中添加外键约束
    (可参考:https://blog.youkuaiyun.com/lk142500/article/details/83590862)

    下图对比了两种添加方式:
    在这里插入图片描述

    • 方式1:添加外键:默认创建名为‘stu_ibfk_1’的外键约束
      alter table stu add foreign key stu(class_id) references grade(id);

    • 方式2:加约束名称(自定义名字“stu_grade foreign”)
      alter table stu add constraint stu_grade foreign key stu(class_id) references grade(id);

  3. 更新外键约束
    在这里插入图片描述

  4. 删除外键

     mysql>alter table stu drop foreign key stu_ibfk_1;
    
  5. 查看外键约束

     mysql> show create table student;
    

各种“花式”查询

  • 比较查询
    在这里插入图片描述

  • 查询-not
    在这里插入图片描述

  • 查询 –
    在这里插入图片描述

  • 查询 between
    在这里插入图片描述

  • 查询 is
    在这里插入图片描述

  • 查询 group
    (下面是按性别分组查)
    在这里插入图片描述

  • 查询 having
    (根据结果再查)
    在这里插入图片描述

  • 查询 order
    在这里插入图片描述
    在这里插入图片描述

  • 查询 分页limit

    在这里插入图片描述

  • 查询 多表关联查询
    在这里插入图片描述

  • 查询 inner join,left join, right join
    在这里插入图片描述

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值