【MySQL】三天复习MySQL(三)

数据库运算符
算术运算符:+ - * / %等
比较运算符: = , !=, > ,< ,is null,is not null。。。
逻辑运算符: ! and or

数据库索引
索引的目的是为了提高查询速度
一般针对where条件后的字段啊添加索引

--添加普通索引‘
alter table ____ add index  __name_(列名);
--添加唯一索引
alter table ____ add unique  __name_(列名);
--删除索引
drop index ____ on _____

表复制:
应用场景:对原表进行测试,但又不想造成数据污染

--复制表
create table __rename__ like __原表__;
--复制数据
insert into ___rename__ select * from __原表__;

常用函数
字符串函数:

concat():将两个或多个字符串组成一个字符串
length():获取字符串长度
replace():搜索并替换字符串的子字符串
substring():从具有特定长度的位置提取一个子字符串

使用 select _某函数_可直接执行
时间函数:

cudate():返回当前日期
now():返回当前日期和时间
year():返回日期的年数
month():返回日期的月份
day():返回日期的天数

数据处理函数:

rand():返回0~1之间随机小数
floor():小数取整

--实际使用常结合使用
edj:
floor(rand()*10);:0~10随机整数
floor(10+rand()*100);:10~100随机整数

存储过程:
是在大型数据库中,一组为了完成特定功能的SQL语句集,他存储在数据库中,一次编译永久有效,用户通过指定存储过程的名字并给出参数(如果该存储过程带参)来执行它,存储过程是数据库的一个重要对象
存储过程=逻辑+SQL

edj:10000个测试账号

begin
declare i int(6) default 0; --循环约束
declare u_name varchar(10);--user_name
declare u_age int(4);
declare u_gender int(2);-- 0男1女
declare u_phone varchar(11);
declare u_email varchar(20);
while i<10000 do
 if i%2=0 then
    set u_gender =0;
 else 
    set u_gender=1;
  end if;
  set u_phone= concat('135111',i+10000);
 set u_name = concat('test_',i);
 set u_age=floor(rand()*100);--年龄随机
 set u_emai= concat(u_name,'@qq.com');
 insert into user(user_name,password,age,gender,phone_num,email create_time)values
 (u_name,'111',u_age,u_gender,u_phone,u_email,now());
 set i=i+1;
end while;
end;
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值