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