数据库的CURD操作

基本概念

crud操作,表示是增删改查. c[create] / r[read] / u[update] /d[delete]

insert语句

  • 将数据添加到表中
  • 基本语法
insert into tablename [(column1 [,column2,,...])]
values (value1 [,value2...]);
  • 添加数据时,可以一次添加多条数据
  • 可以选择字段添加部分字段数据
字段  id   name   price
insert into goods values(10,'可口可乐',3.0);
insert into goods (id,name,price) values(20,'小小酥',2.5);
insert into goods (id,name) values(30,'红牛');
  • 插入空值的前提是该字段允许为空,还要注意字段是否有默认值

update语句

update tablename
    set col_name1=expr1 [,col_name2=expr2...]
    [where expr];
将老妖怪的薪水在原有基础上增加1000元
update worker 
    set salary=(select salary from worker where user_name='老妖怪')+1000 
    where user_name='老妖怪';
-------------------
update worker 
    set salary = salary + 1000 
    where user_name='老妖怪';

delete语句

delete from tablename
    where expr;
  • delete语句不能删除某一列,可以使用update将该字段设置为null
  • delete会返回删除的记录数
小技巧:快速的复制一张表
create table worker2 like worker; //会创建一张空表,结构与worker相同
insert into worker2 select * from worker;

select语句

select [distinct] *|{column1,column2,column3..}
    from tablename;

如果我们希望过滤重复的数据,则加上 distinct
* 号表示将所有的字段都检索出来,一般来说我们开发中不会使用select * 语句.这种语句会返回所有字段,效率较低
如果我们只希望检索某几列,则写清楚字段名就可以
我们的使用原则是,需要什么字段,就取回什么字段

select distinct * from student;
  • select语句可以对列进行运算
select *|{column1 | expression,column2..}
    from tablename;

别名写法
select name,chinese+english+math from student;
select name,chinese+english+math as totalgrade from student;

MariaDB [test]> select name,(chinese+english+math)totalgrade from student;
+-----------+------------+
| name      | totalgrade |
+-----------+------------+
| 韩顺平    |     257.00 |
| 宋江      |     242.00 |
| 关羽      |     276.00 |
| 赵云      |     233.00 |
| 欧阳锋    |     185.00 |
| 黄蓉      |     170.00 |
+-----------+------------+
6 rows in set (0.000 sec)
where子句常用运算符
  • 比较运算符

,<, <,=, >,=, =, <> ,!=
betwween ... and ...
in(set)
like
not like
is null

  • 逻辑运算符
    and,or,not

order by子句

用于排序

select name,math from student order by math desc;
select name,math from student order by math asc; //默认升序
select name,math from student order by math desc,name asc; 

你可能感兴趣的:(数据库的CURD操作)