1、增
格式 insert into 表名字 (列名) values(...);
两种方式 1、直接insert into 表名字 values(...); 全部插入
2、insert into 表名字(需要加的列名字) values (...); 部分插入 部分插入的时候,插入的列名字需要和后面的值相对应。
多条插入则只需要在values后面多增加几个值
我的id从3开始增是因为我之前增加了两条记录并且删除了。
2、删
格式 delete from 表面 where 条件
3 改
格式 : update 表名字 set 列名字= 值,列名字=值.....where 条件
4、查
select * from 表名字
select 列名字,列名字... where 条件;
因为查在数据库中使用比较多,接下来就针对查做进一步的记录。
准备数据:
insert into finishing_material values (0,'水泥' , '厂商A'), (0,'黄沙' , '厂商B'), (0,'砖头' , '厂商C'), (0,'电线' , '厂商A'), (0,'网线' , '厂商A'), (0,'地板' , '厂商B'), (0,'地砖' , '厂商B'), (0,'油漆' , '厂商D'), (0,'硅藻泥','厂商A'), (0,'螺丝' ,'厂商C'), (0,'铰链' ,'厂商C');
create table suppler_info(id int unsigned not null auto_increment primary key,name varchar(30),location varchar(30));
insert into suppler_info values
(0,'厂商A','江苏'),
(0,'厂商B','浙江'),
(0,'厂商C','广东'),
(0,'厂商D','江西');
1、给字段取别名 as
select id as 序号,name as 名字,supplier as 厂商 from finishing_material;
select f.id as 序号,f.name as 名字,f.supplier as 厂商 from finishing_material as f;
2、选择不一样的数据
select distinct supplier from finishing_material;
3、模糊查询
select supplier from finishing_material where supplier like '厂商%'; --> 可以找出所有以厂商开头的数据
select name from finishing_material where name like '地_'; ---->可以找出所有名字以地开头且名字只有两个的数据;
4、在一定范围内查询
select * from finishing_material where id in (1,2,3,4,6); -----> 找出id是12346的数据
select * from finishing_material where id between 6 and 9; ------->找出id在6-9之间的数据 包含6,9
5、 排序
演示需要:增加一列价格 并且增加了一点数据
select max(price) from finishing_material ; 求最大值
select min(price) from finishing_material ; 求最小值
select sum(price) from finishing_material ; 求总和
select avg(price) from finishing_material ; 求平均
按价格从小到大排序
select * from finishing_material order by price;
按价格从大到小排序
select * from finishing_material order by price desc;
6、分组
group by 将查询结果按照一个或者多个字段进行分组,字段相同的做一组
备注: having 是分组查询后 按照一定条件输出查询的结果 having 需要和group by搭配使用。
7、limit 使用 这是由于查询的数据数量过于庞大的时候,
select * from finishing_material limit 0,5; 从第一条数据开始的五条数据
8、链接查询 ,将两个表连接在一起
select * from finishing_material as f left join suppler_info as s on f.supplier=s.name;
暂时能够想到就是这些,后面想到再补充,其实select语句可以总结类似如下:
select distinct(..) from table where ..... group by .....having....ordr by.... limit count;