6毛毛虫之数据库

2023-03-20  本文已影响0人  Jeff_9021

1)数据库

熟悉制作测试数据方法

1、左右连接的区别

select *fromA表 left join B on

以A表为主表查出A表所有数据,B表不存在的数据显示为空

select *from A表 right join B on

以B表为主表查出B表所有数据,A表不存在的数据显示为空

2、索引,数据库调优

索引是B+tree的数据结构

分为有单列索引,唯一索引和多列索引

用于查询时加快速度

3、讲出删除表内数据,不删除表结构的两种方法

delete from 表名,truncate table 表名 ,truncate不可以回滚

delete可以加where条件,truncate不可以

4、int类型判空 <>''

5、不去重 union all

7、条件查询 if(ex1,ex2,ex3)

ex1,条件

true为ex2

false为ex3

8、多条件

case when ... then

when... then

when... then

else... end

9、时间年月份取值

date:2021-12-16

取年份:year(date)

取月份:month(date)

取日:day(date)

10、substring_index(str,delim,count)分割取值

str = 字段名/字符串

delim = 分隔符

count = 计数

假设 str =www.baidu.comm

substring_index(str,'1)

结果为 www

substring_index(str,.2)

11、substr()函数

substr(str,start,length)

start为第几位开始,0.1都为第一位

length为所截取需要的长度

例:substr('234556'3,2) 结果为45

12、窗口函数

13、Replace into tableName values()

replace 首先尝试插入数据,如果表中有此数据(根据主键ID或唯一索引判断),先删除此行数据,再重新插入新数据

14、insert into tablename values()

update tablename set 需修改的字段内容 where 所要修改的那条记录 delete from tablename where 删除某条记录

15、timestampdiff(minute.开始时间,结束时间)查询两个时间之间的差值

可以进行参数设置,可以精确到天(day),小时(hour),分钟(minute),秒(second)

16、修改表结构

举例:请在用户信息表,字段level的后面增加一列最多可保存15个汉字的字段school;并将表中job列名改为profession,同时varchar字段长度变为10;achievement的默认值设置为0。

alter table user_info add school varchar(15) after level;

增加列在某列之后alter table 增加的表格 add 增加列的名称 数据类型 位置(after level 在level 之后)

alter table user info change job profession varchar(10):

更换列的名称及数据类型alter table user info change 原列名 修改列名 修改数据类型

alter table user info modify achievement int(11) default 0:

更改数据类型alter table 表名 修改列名称 数据类型 默认值等

上一篇 下一篇

猜你喜欢

热点阅读