MySQL(二)

一怼:黄发小儿,尔等休要以为站成WiFi之型,老夫便会再入尔等罗网,大丈夫生于天地之间,当读圣贤之书,养浩然正气,仿天地之德以爱人,效圣贤之志以成业,岂不闻骗人是小狗,开挂死全家。乎!(by阅后即瞎)

书接上回,我们继续来说数据CRUD。

按列插入语句

insert into 表名(列名)values(插入内容)。

插入多个数据:

insert into 表名(列名)values(插入内容),(插入内容2)。

修改数据

update customer set 列名(数据项)= 修改内容where 修改位置;

删除数据

delete from 表名 where 删除位置;

逻辑删除(表面上的删除,但存在于数据库)

update 表名 set is_delete=1 where 插入位置;
select * from 表名 where is_delete=0;

比较运算符

select * from 表名 where 位置>7;位置大于7的
select * from 表名 where 位置!=7;位置不等于7的
select * from 表名 where 位置<>7;位置不等于7的
还有其他运算符> 、>=、<、!=。

逻辑运算符

逻辑运算符包括and、or、not。
例子:select * from customer where id > 7 and user_name=’老王’;

模糊查询

在python中的正则中我们认识的%和‘.’在SQL语句中。
%替换了*,_替换了’.‘。请务必注意这一点。
例子:select * from customer where user_name like ‘王%’;
%代表匹配任意的多个字符
select * from customer where user_name like ‘王%’ or user_name like ‘_王%’ or user_name like ‘%王’;

范围查询

不连续的范围查询:select * from 表名 where 查询内容 in(范围);
连续的范围查询:select * from 表名 where 查询内容 between(低范围) and(高范围);

查找null和not null

查找null:select * from 表名 where 查找列 is null;
查找not null:select * from 表名 where 列名 is not null;

运算级

括号 > not >比较运算符 > 逻辑运算符

排序的问题

desc降序 asc升序
例子:select * from customer order by user_name desc ,id desc;
语句顺序的问题,如果第一个条件出现同值的情况,按照第二个语句来进行排序

删除重复行

select distinct 比较内容 from 表名;

聚合函数

sum()求和 max()最大值 min()最小值 avg()平均值 count()个数。
例子:
select avg(所求内容) from 表名 where 范围 ;
select sum(所求内容)/count(所求内容) as ‘均值’ from 表名 where范围 ;

分组的问题

select gender from 表名 group by gender;查询表中的gender数据,按照 gender数据进行分组。
select gender,group_concat(user_name) from 表名 group by gender;
查询表中的gender数据,按照 gender数据进行分组显示分组后的user_name。
select gender,group_concat(user_name) from 表名 group by gender having id>3;
查询表中的gender数据,按照 gender数据进行分组显示分组后所有id>3的user_name。
having的用法和语意与where相同,在分组中用having进行限定。
select gender,group_concat(user_name,id) from 表名 group by gender having group_concat(id)>3;
查询表中的gender数据,按照 gender数据进行分组显示分组后显示所有id>3的user_name。
select gender,avg(id) from 表名 group by gender;
以gender显示每组的平均id。
PS:
select * from customer having id>3;
having 和 where 功能是一样的

分页的问题(解决数据量大的问题)

select * form 表名 WHERE 条件 limit 5,10; //检索6-15条数据。
select * form 表名 WHERE 条件 limit 5,-1; //检索6到最后一条数据。
select * form 表名 WHERE 条件 limit 5; //检索前5条数据。

完整版语句

select 查找内容 * from 表名。
where 条件。
group by 字段 。
having 条件。
order by 以什么到什么排序。
limit start,count检索开始(start)位到结束(count)位。
from customer > where >group by> distinct * >having >order by >limit

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值
>