ICode9

精准搜索请尝试: 精确搜索
首页 > 其他分享> 文章详细

数据处理之增删改

2022-08-15 19:00:30  阅读:176  来源: 互联网

标签: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
来源: https://www.cnblogs.com/zjwcoblogs/p/16589349.html

本站声明: 1. iCode9 技术分享网(下文简称本站)提供的所有内容,仅供技术学习、探讨和分享;
2. 关于本站的所有留言、评论、转载及引用,纯属内容发起人的个人观点,与本站观点和立场无关;
3. 关于本站的所有言论和文字,纯属内容发起人的个人观点,与本站观点和立场无关;
4. 本站文章均是网友提供,不完全保证技术分享内容的完整性、准确性、时效性、风险性和版权归属;如您发现该文章侵犯了您的权益,可联系我们第一时间进行删除;
5. 本站为非盈利性的个人网站,所有内容不会用来进行牟利,也不会利用任何形式的广告来间接获益,纯粹是为了广大技术爱好者提供技术内容和技术思想的分享性交流网站。

专注分享技术,共同学习,共同进步。侵权联系[81616952@qq.com]

Copyright (C)ICode9.com, All Rights Reserved.

ICode9版权所有