首页 > 其他分享 >数据处理之增删改

数据处理之增删改

时间:2022-08-15 19:00:47浏览次数:57  
标签:salary INSERT hire 数据处理 emp1 增删 数据 id

数据处理之增删改:

  • 插入数据:

                 方式1:

                      使用 INSERT 语句向表中插入数据。

 

#数据处理之增删改
#储备工作
USE atguigudb;
CREATE TABLE IF NOT EXISTS emp1(
id INT,
`name` VARCHAR(15),
hire_date DATE,
salary DOUBLE(10,2)
);
DESC emp1;

SELECT *
FROM emp1;
#添加数据
#方式1:一条一条添加数据
#① 没有指明添加的字段
INSERT INTO emp1
VALUES (1,'Tom','2000-12-21',3400); #一定要按照声明的字段的先后顺序添加

#② 指明要添加的子段
INSERT INTO emp1(id,hire_date,salary,`name`)
VALUES (2,'1999-09-09',4000,'jerry');

#没有进行赋值的hire_date 的值为null
INSERT INTO emp1(id,salary,`name`)
VALUES (3,4000,'jerry');

#③
INSERT INTO emp1(id,NAME,salary)
VALUES(4,'jim',5000),
      (5,'madam',5500);

           小结:

                     VALUES 也可以写成 VALUE ,但是VALUES是标准写法。

                     字符和日期型数据应包含在单引号中。

        方式2:将查询结果插入到表中

                           INSERT还可以将SELECT语句查询的结果插入到表中,此时不需要把每一条记录的值一个一个输入,

                           只需要使用一条INSERT语句和一条SELECT语句组成的组合语句即可快速地从一个或多个表中向一个

                            表中插入多行。

图片

#方式2:将查询结果插入到表中

SELECT *
FROM emp1;

INSERT INTO emp1(id,NAME,salary,hire_date)
SELECT employee_id,last_name,salary,hire_date  #查询的字段一定要与添加到的表的字段一一对应
FROM employees
WHERE department_id IN (70,60);
#注意:可能会有风险

 

  • 更新数据:

                   使用 UPDATE 语句更新数据。语法如下:

图片

#更新数据 (修改数据)
#UPDATE ... SET ... WHERE ...
#可以实现批量修改数据的
UPDATE emp1
SET hire_date=CURDATE()
WHERE id=5;                    #只需要修改数据为5的数据

SELECT * FROM emp1
#同时修改一条数据的多个字段
UPDATE emp1
SET hire_date =CURDATE(),salary=6000
WHERE id=4;

#题目:将表中姓名中包含字符a的提薪20%
UPDATE emp1
SET salary=salary*0.20
WHERE name LIKE '%a%';

#修改数据时,是可能存在不成功的情况(也有可能由于约束的影响造成的)
  • 删除数据:

                      使用 DELETE 语句从表中删除数据。

 

#删除数据 DELETE  FROM ... WHERE ...
DELETE FROM emp1
WHERE id=1;
#小结:DML 操作默认情况下,执行完以后都会自动提交数据。
#   如果希望执行完以后不自动提交数据就,则需要使用 SET autocommit=FALSE。

 

 

标签:salary,INSERT,hire,数据处理,emp1,增删,数据,id
From: https://www.cnblogs.com/zjwcoblogs/p/16589349.html

相关文章