在线精品99_中国九九盗摄偷拍偷看_91免费版在线观看_91.app_91高清视频在线_99热最新网站

mysql增删改的方法是什么

177次阅读
没有评论

共计 4458 个字符,预计需要花费 12 分钟才能阅读完成。

这篇文章主要介绍“mysql 增删改的方法是什么”的相关知识,丸趣 TV 小编通过实际案例向大家展示操作过程,操作方法简单快捷,实用性强,希望这篇“mysql 增删改的方法是什么”文章能帮助大家解决问题。

插入数据

代码案例

#  方式 1:一条一条的添加数据
#  没有指明添加的字段时,一定要按照声明的字段的先后顺序添加
INSERT INTO emp1
VALUES (1, Tom , 2000-12-21 ,3400); 
#  错误写法:没有指定添加字段,也没有按声明顺序
INSERT INTO emp1
VALUES (2,3400, 2000-12-21 , Jerry 
#  指明要添加的字段  (推荐)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,4500, shk 
#  同时插入多条记录  (推荐)INSERT INTO emp1(id,NAME,salary)
VALUES
(4, Jim ,5000),
(5, 张俊杰 ,5500);
# VALUES  也可以写成  VALUE ,但是 VALUES 是标准写法。#  字符和日期型数据应包含在单引号中
#  方式 2:将查询结果插入到表中;查询的字段一定要与添加到的表的字段一一对应
INSERT INTO emp1(id,NAME,salary,hire_date)
SELECT employee_id,last_name,salary,hire_date 
FROM employees
WHERE department_id IN (70,60);
#  说明:emp1 表中要添加数据的字段的长度不能低于 employees 表中查询的字段的长度
#  如果 emp1 表中要添加数据的字段的长度低于 employees 表中查询的字段的长度的话,就有添加不成功的风险

更新数据

代码案例

# UPDATE .... SET .... WHERE ...
#  可以实现批量修改数据的
#  更新为当前时间
UPDATE emp1
SET hire_date = CURDATE()
WHERE id = 5;
#同时修改一条数据的多个字段
UPDATE emp1
SET hire_date = CURDATE(), salary = 6000
WHERE id = 4;
#  将表中姓名中包含字符 a 的提薪 20%
UPDATE emp1
SET salary = salary * 1.2
WHERE NAME LIKE  %a% 
#  修改数据时,是可能存在不成功的情况的。(可能是由于约束的影响造成的)UPDATE employees
SET department_id = 10000
WHERE employee_id = 102;

删除数据

代码案例

#  删除 id 为 1 的数据
DELETE FROM emp1
WHERE id = 1;
#  在删除数据时,也有可能因为约束的影响,导致删除失败
DELETE FROM departments
WHERE department_id = 50;
# DML 操作默认情况下,执行完以后都会自动提交数据
#  如果希望执行完以后不自动提交数据,则需要在 DML 操作前,使用  SET autocommit = FALSE

mysql8 新特性,计算列

代码案例

#  新建 1 张表,字段 c 即为计算列
CREATE TABLE test1(
a INT,
b INT,
c INT GENERATED ALWAYS AS (a + b) VIRTUAL 
#  插入前 2 个字段时,自动计算第 3 个字段
INSERT INTO test1(a,b)
VALUES(10,20);
#  修改第 1 个字段后,自定计算第 3 个字段
UPDATE test1 SET a = 100;

综合案例

代码案例

#  创建数据库 test01_library
CREATE DATABASE IF NOT EXISTS test01_library CHARACTER SET  utf8 
#  切换数据库
USE test01_library;
#  创建表  books,表结构如下:CREATE TABLE IF NOT EXISTS books(
id INT,
`name` VARCHAR(50),
`authors` VARCHAR(100),
price FLOAT,
pubdate YEAR,
note VARCHAR(100),
num INT
#  查看表结构
DESC books;
#  查看表数据
SELECT * FROM books;
#  向 books 表中插入记录
# 1)不指定字段名称,插入第一条记录
INSERT INTO books VALUES(1,  Tal of AAA ,  Dickes , 23,  1995 ,  novel , 11);
# 2)指定所有字段名称,插入第二记录
INSERT INTO books(id, NAME, AUTHORS, price, pubdate, note, num)
VALUES(2,  EmmaT ,  Jane lura , 35,  1993 ,  joke , 22);
# 3)同时插入多条记录
INSERT INTO books(id, NAME, AUTHORS, price, pubdate, note, num)
VALUES
(3,  Story of Jane ,  Jane Tim , 40, 2001,  novel , 0),
(4,  Lovey Day ,  George Byron , 20, 2005,  novel , 30),
(5,  Old land ,  Honore Blade , 30, 2010,  Law , 0),
(6,  The Battle ,  Upton Sara , 30, 1999,  medicine , 40),
(7,  Rose Hood ,  Richard haggard , 28, 2008,  cartoon , 28);
#  将小说类型 (novel) 的书的价格都增加 5
UPDATE books
SET price = price + 5
WHERE note =  novel 
#  将名称为 EmmaT 的书的价格改为 40,并将说明改为 drama
UPDATE books
SET price = 40, note =  drama 
WHERE NAME =  EmmaT 
#  删除库存为 0 的记录
DELETE FROM books WHERE num = 0;
#  统计书名中包含 a 字母的书
SELECT NAME
FROM books
WHERE NAME LIKE  %a% 
#  统计书名中包含 a 字母的书的数量和库存总量
SELECT COUNT(*), SUM(num)
FROM books
WHERE NAME LIKE  %a% 
#  找出“novel”类型的书,按照价格降序排列
SELECT NAME, note, price
FROM books
WHERE note =  novel 
ORDER BY price DESC;
#  查询图书信息,按照库存量降序排列,如果库存量相同的按照 note 升序排列
SELECT *
FROM books
ORDER BY num DESC, note ASC;
#  按照 note 分类统计书的数量
SELECT note, COUNT(*)
FROM books
GROUP BY note;
#  按照 note 分类统计书的库存量,显示库存量超过 30 本的
SELECT note, SUM(num)
FROM books
GROUP BY note
HAVING SUM(num)   30;
#  查询所有图书,每页显示 5 本,显示第二页
SELECT *
FROM books
LIMIT 5, 5;
#  按照 note 分类统计书的库存量,显示库存量最多的
SELECT note, SUM(num) sum_num
FROM books
GROUP BY note
ORDER BY sum_num DESC
LIMIT 0, 1;
#  查询书名达到 10 个字符的书,不包括里面的空格
SELECT CHAR_LENGTH(REPLACE(NAME,    , ))
FROM books;
#  方式 2:SELECT NAME
FROM books
WHERE CHAR_LENGTH(REPLACE(NAME,    , ))  = 10;
#  查询书名和类型,其中 note 值为 novel 显示小说,law 显示法律,medicine 显示医药,cartoon 显示卡通,joke 显示笑话
SELECT NAME  书名 , note, CASE note 
WHEN  novel  THEN  小说 
WHEN  law  THEN  法律 
WHEN  medicine  THEN  医药 
WHEN  cartoon  THEN  卡通 
WHEN  joke  THEN  笑话 
ELSE  其他 
END  类型 
FROM books;
#  查询书名、库存,其中 num 值超过 30 本的,显示滞销,大于 0 并低于 10 的,显示畅销,为 0 的显示需要无货
SELECT NAME AS  书名 , num AS  库存 , 
CASE WHEN num   30 THEN  滞销 
WHEN num   0 AND num   10 THEN  畅销 
WHEN num = 0 THEN  无货 
ELSE  正常 
END  显示状态 
FROM books;
#  统计每一种 note 的库存量,并合计总量
SELECT IFNULL(note,  合计库存总量) AS note, SUM(num)
FROM books
GROUP BY note WITH ROLLUP;
#  统计每一种 note 的数量,并合计总量
SELECT IFNULL(note,  合计总量) AS note, COUNT(*)
FROM books
GROUP BY note WITH ROLLUP;
#  统计库存量前三名的图书
SELECT *
FROM books
ORDER BY num DESC
LIMIT 0, 3;
#  找出最早出版的一本书
SELECT *
FROM books
ORDER BY pubdate ASC
LIMIT 0, 1;
#  找出 novel 中价格最高的一本书
SELECT *
FROM books
WHERE note =  novel 
ORDER BY price DESC
LIMIT 0, 1;
#  找出书名中字数最多的一本书,不含空格
SELECT *
FROM books
ORDER BY CHAR_LENGTH(REPLACE(NAME,    , )) DESC
LIMIT 0, 1;

关于“mysql 增删改的方法是什么”的内容就介绍到这里了,感谢大家的阅读。如果想了解更多行业相关的知识,可以关注丸趣 TV 行业资讯频道,丸趣 TV 小编每天都会为大家更新不同的知识点。

正文完
 
丸趣
版权声明:本站原创文章,由 丸趣 2023-07-13发表,共计4458字。
转载说明:除特殊说明外本站除技术相关以外文章皆由网络搜集发布,转载请注明出处。
评论(没有评论)
主站蜘蛛池模板: 久久久久久久久无码精品亚洲日韩 | 成人毛片av免费 | 中文毛片无遮挡高潮免费 | 国产一级做a爱片久久片 | 亚洲精品一区二区三区在 | 少妇放荡的呻吟干柴烈火免费视频 | 欧美毛片网站 | 中文字幕乱码亚洲无线三区 | 人妻aⅴ中文字幕 | 国产精品无码素人福利 | 一级 黄 色 片免费 一级 在线播放 | 无码国产精成人午夜视频一区二区 | 国产精品嫩草视频永久网址 | 99久久免费精品国产免费高清 | 国产69精品久久久久99尤物 | 天堂网www中文天堂在线 | 亚洲欧美成人一区二区在线 | 免费观看欧美一级特黄 | 久久久久久亚洲av成人无码国产 | 人妻夜夜爽天天爽 | 国产嘿嘿嘿视频在线观看 | 成人精品视频网站 | 91免费国产在线观看 | 亚洲 欧洲 自拍 另类 校园 | 国产在沙发上午睡被强 | 日韩一区国产二区欧美三 | 精品福利一区二区三区免费视频 | 好男人好资源电影在线播放 | 欧美一级毛片无遮挡内谢 | 国产人成视频在线视频 | 又大又黄又粗又爽的免费视频 | 免费一级毛毛片 | 亚洲伊人情人综合网站 | 国产成人在线视频免费观看 | 亚洲五月综合缴情在线观看 | 亚洲 欧美 日韩 综合 | 韩国19福利视频免费观看 | 乱人伦精品视频在线观看 | 欧美亚洲中日韩中文字幕在线 | 日韩欧美亚州 | 男女男精品免费视频网站 |