mysql创建LDL_mysql

本文详细介绍了SQL中的各种约束如默认值、非空、唯一、主键、自增长及外键,并解释了如何使用不同类型的连接查询来整合多个表中的数据。

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

约束

1.默认值

创建表时在某一字段数据类型后面加 default 默认值                        则在表中添加内容时如果在该字段不添加则自动添加默认值                            默认值可以为null

2.非空

创建表时在某一字段数据类型后面加 not null                        则在表中添加内容时在该字段必须添加内容且不能添加null

3.唯一

创建表时在某一字段数据类型后面加 unique                        则在表中添加内容时在该字段所添加的内容不能重复                                        可以添加多个null

4.主键

创建表时在某一字段数据类型后面加 primary key                        兼具非空和唯一特性

5.自增长

创建表时在某一字段数据类型后面加 auto_increment                        则在表中添加内容时不在该字段添加内容自动数值加一               一般用于主键

后面再加zerofill则从0开始

6.外键

建表语句最后加 constraint 外键名 foreign key(字段名) references 主表名(主表字段名【多为主表主键】)                      解决数据冗余高问题

添加数据时先主表后副表,修改或删除数据时先副表后主表

连接查询(多表查询)

1.交叉连接

表1名 join 表2名                         将两个表强行合为一个表,没有联系

2.内连接

表1名 join 表2名 on 表1名.字段1名=表2名.字段2名                           将表1中字段1和表2中字段2相等的数据行合为一行

3.左(外)连接

表1名 left  join 表2名 on 表1名.字段1名=表2名.字段2名                       将表1中字段1和表2中字段2相等的数据行合为一行,同时将左表多余内容显示右表赋值为null

4.右(外)连接

表1名 right  join 表2名 on 表1名.字段1名=表2名.字段2名                       将表1中字段1和表2中字段2相等的数据行合为一行,同时将右表多余内容显示左表赋值为null

5.全(外)连接

表1名 full  join 表2名 on 表1名.字段1名=表2名.字段2名                       将表1中字段1和表2中字段2相等的数据行合为一行,同时将左表多余内容显示右表赋值为null,右表多余内容显示左表赋值为null

子查询

where 字段 in(查询语句)                                  以一条查询语句的查询结果作为另一条查询语句的条件进行查询

联合查询

查询语句1

union

查询语句2                                         将两条查询语句的查询结果拼接在一起,两者之间可以没有任何联系

两条查询语句所查询的字段数量和数据类型要相同,显示字段名为第一条语句的字段名

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值