首页 > 数据库 >MySQL(三)+测试题

MySQL(三)+测试题

时间:2022-08-29 18:23:09浏览次数:76  
标签:insert name 测试题 tableName 索引 MySQL select

MySQL索引

在MySQL中,创建MySQL的索引主要是为了提⾼MySQL查询的效率。但是添加太多的索引也是会降低更新

表的速 度的,因为对表进⾏DML操作的时候,MySQL的内部不仅仅要保存数据,还需要保存索引⽂件的

创建索引

创建表时添加索引

添加索引

对已经创建好的表添加索引

删除索引

 

 

 

 更新索引

MySQL约束

一、创建表约束

create table if not exists a ();

如果表存在也会显示运行成功,但不会创建出来

如果表不存在则会自动创建a表

二、列的约束

AUTO_INCREMENT:自增

PRIMARY KEY:主键

NOT NULL:不为空

unique:唯一性

default:默认

如何设置多个主键

三、插入的区别

insert:常规的插入

replace:需要处理重复行,行的唯一性由主键约束,如果行存在,使用replace会自动的删除行并插入新行,如果不存在,就是等同于insert

四、MySQL的时间类型:

DATETIME:YYYY-MM-DD HH:MM:SS 最大值到9999

TIMESTAMP: YYYY-MM-DD HH:MM:SS 最大值到2038年

DATE: YYYY-MM-DD

YEAR: YYYY

alter table user add birtgday datetime default "2022-01-01 23:59:59";

 

五、MySQL小数点

FLOAT:单精度

DOUBLE:双精度

DECIMAL (M, D):D代表小数点后的位数,M代表总的位数

语法格式“DECIMAL(M,D)”。其中,M是数字的最大数(精度),其范围为“1~65”,默认值是10;D是小

数点右侧数字的数目(标度),其范围是“0~30”,但不得超过M。

当小数点后超过限制位数时。自动会进行四舍五入

 

 

 根据分数显示不同的判断情况:

 重复字段筛选

查询出不同性别年龄的总和

 

查询出不同性别的平均年龄

 

MySQL

having和where的区别**

having必须和聚合函数合在一起使用,where后面是跟条件

请写出删除和插入的SQL语句

先新建表

create table tableName();

然后列删除,表删除

alter table tableName drop 列名

drop table tableName

delete from tableName where 条件

单条插入 insert into values()

多条插入 insert into values()();

表插入insert into tableName select * from tableName

最高工资减去最小工资

select( -> (select max(salary) from salaries) -> - -> (select min(salary) from salaries) -> );

算术表达式

select(5-4);

select(5+4);

select(5/4);

select(5*4);

mysql中有两个表,表A中有name,性别,分数;表B中有name,性别,分数,女生总共多少人,平均分,工程中用到哪些函数

count 分别查出表A和表B,然后在一起相加select(4+4);

平均分是avg

mysql中有两个表,表A中有id,name,company,表B中有id,工资,怎么查询李四的工资

用id把两个表内关联起来,where后面跟name=李四,select name,工资

 

标签:insert,name,测试题,tableName,索引,MySQL,select
From: https://www.cnblogs.com/Aurora--1/p/16636800.html

相关文章

  • MySQL(四)-补充
    1、内查询:2种表示方法以testdev数据库的goods表和shop表为例:查询出goods表的name和shop表的name、level:第1种方法:第2种方法:2、创建表:ifnotexistscreatetablei......
  • MySql面试题总结
    1、having和where的区别解答:having子句用于分组后筛选,where子句用于行条件筛选where条件子句中不能使用聚集函数,而having子句就可以。having只能用在groupby之后,where......
  • springboot定时同步数据,从sqlserver到mysql
    定时同步数据,从sqlserver到mysql 注意事项:一.primary:master #设置默认的数据源或者数据源组,默认值即为master二.@Scheduled()和 @DS("slave_1")注解 步骤:1.......
  • MySQL4
    mysql5内链接   左连接1、先走内连接的逻辑2、再查询出左表所有的数据  select*fromgoodgleftjoinshopsong.id=s.good_id;  右链接  s......
  • linux环境搭建篇-安装mysql
    1.下载安装包方式一:手动下载并上传Linux下载mysql5.7的安装包,可以从官网下载https://downloads.mysql.com/archives/community  下载完成后将安装包上传到linux......
  • Mysql 导出文件csv 自动将字符串转化为了日期格式的处理
      在mysql自带的导出功能里将文件以csv的格式导出出现将字符串自动转化为了日期格式解决办法(并不推荐):读取每个String,在此字符串后面加入"\t",可以避免CSV的默认转换。副......
  • Mysql踩过的坑 索引失效 隐式类型转换
    ##博主所在项目,2期项目是mysql5.6版本,其使用的字符集是utf8在3期项目进行开发的时候,有一部分现成的表直接拷贝过来3期项目去使用3期项目mysql版本是8.0.20 默认约......
  • mysql varchar 和 sqlserver varchar 的区别
    mysql4.0版本以下,varchar(20),指的是20字节,如果存放UTF8汉字时,只能存6个(每个汉字3字节)5.0版本以上,varchar(20),指的是20字符,无论存放的是数字、字母还是UTF8汉字(每个汉字3字......
  • mysql数据库定期备份
    #!/bin/bashusername='xxxx'#数据库用户名passw='xxxxx'#密码date_ymd=`date+%Y_%m_%d`#年月日date_hms=`date+%H%M%S`#时分秒filedir='/root/data_backup/'#备份......
  • DataGrip连接Mysql报08S01解决方案
    以前正常使用的GataGrip,突然在某天报下面的错误提示:08S01[08S01]CommunicationslinkfailureThelastpacketsentsuccessfullytotheserverwas0milli......