mysql增删改查不区分大小写吗_MySQL的增删改查语句以及数据库设计的三大范式...

数据库设计的三大范式:

1.列的原子性,即列是不可再分的

2.表里的每一列都应该与主键有关系,

3.表里的每一列都应该与主键有直接关系,

当使用自增长列不满足2、3范式,是特殊例子,只用在解决较为复杂的问题

SQL的增删改查:

一、添加数据, insert into 表名 values(添加的内容)  ,添加的内容每项用逗号隔开,注意事项:

字符串和字符需要加单引号,布尔型添加0或1不带引号

datetime类型按照格式 '2018-01-02 11:34:45'来添加,也要加单引号

整数型,小数型不用加引号

表里有几列就要添加几个数据,如果有空数据,则要指定添加数据的列 insert into 表名(要添加数据的列) values()

SQL语句里不区分大小写

自增长列添加数据直接给0,会自动增长

二、修改数据

update 表名 set 列名=修改的值 where 可以锁定需要修改项的条件

如果数据库中的数据时数字类型,想要数据加1的方法   update 表名 set 列名=列名+1 where 条件

三、删除数据

delete from 表名 where 要删除数据的锁定条件

四、查询数据,简单查询

1.查询某一张表中的所有数据

select * from 表名

2.查询指定列

select 指定列名1,指定列名2 from 表名

3.给列指定显示名称

select 列名 as '指定名称' from 表名

4.条件查询

select * from 表名 where 条件

条件可以添加or表示或 以及and表示并

5.模糊查询(关键字查询)

select * from 表名 where 列名 like '_关键字%'

_表示一个字符,%表示n个字符

6.排序查询(以某一列的顺序排列)

select * from 表名 order by 列名 desc

默认为升序排列(从小到大往下排列),desc表示降序排序(从大到小往下排列)

列名后追加列名表示追加列名为第二排列顺序

7.去重查询

select distinct 列名 from 表名

8.分页查询

select * from 表名 limit 5,5

前一个5表示跳过5条,后一个5表示取5条,合起来即每页5条信息

9.统计查询(聚合函数)

(1)数据条数  select count(*) from 表名

(2)最大值、最小值  select max(列名) from 表名 取最大值  select min(列名) from 表名 取最小值

(3)取平均值  select avg(列名) from 表名

10.分组查询

select 列名,count(*) from 表名 group by 列名  按照某一列分组

select 列名 from 表名 group by 列名 having count(*)  按照分组查询每一组的条数   having后可以直接跟条件

11.范围查询

select * from 表名 where 列名 between 60 and 80  查询数值在60到80之间的数据

12.离散查询

select * from 表名 where 列名 in(1,5,8,9)  表示查询数值为1,5,8,9这四个数的数据

高级查询

(1)联合查询(行的扩展),是纵向扩展

select 列名 from 表名1

union

select 列名 from 表名2

(2)连接查询( 连接查询),是横向扩展

select * from 表名1,表名2 where 表名1.列名=表名2.列名

再把*换成想要的列名,列举列名时注意两张表中重名的列名要带上表名如 表名.列名 ,不重名的列名可以不加表名,

(3)子查询,特点是子查询的结果作为父查询的条件使用

无关子查询:子查询和父查询没有关系,子查询拿出来可以单独执行

相关子查询:子查询和父查询互相依赖,不能单独拿出来执行,子查询用到了父查询的内容,利用查询的读取顺序,子查询直接使用卡住的父查询的内容,如

select * from 表名1 a where 列名1>(select 列名1 from 表名1 b where b.列名2= a.列名2)

相关子查询可以处理一下较为复杂的问题

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值