当前位置: 首页 > news >正文

北京网站建设哪家好/百度指数pc版

北京网站建设哪家好,百度指数pc版,企业网站建设教程pdf,日本平面设计网站✨哈喽,进来的小伙伴们,你们好耶!✨ 🛰️🛰️系列专栏:【通关MySQL】 ✈️✈️本篇内容:MySQL增删改查(CRUD)。 🚀🚀代码存放仓库gitee:Java数据结构代码存放! ⛵⛵作者简…

✨哈喽,进来的小伙伴们,你们好耶!✨

🛰️🛰️系列专栏:【通关MySQL】

✈️✈️本篇内容:MySQL增删改查(CRUD)。

🚀🚀代码存放仓库gitee:Java数据结构代码存放!

⛵⛵作者简介:一名双非本科大三在读的科班Java编程小白,道阻且长,你我同行!

目录

一、新增(Create)

一、插入数据方式

1.单行数据+全列插入

2、多行数据 + 指定列插入

 二、 查询(Retrieve)

一、查询方式

1、全列查询

​编辑 2、指定列查询

3、查询字段为表达式

4 、别名

5 、去重:DISTINCT

 6、 排序:ORDER BY

7、条件查询 WHERE

1、基本查询

 2、AND、OR

3、观察AND、OR优先级

4、范围查询

5、模糊查询:LIKE

​编辑6、 分页查询:LIMIT  

 四、 修改(Update)

 五. 删除(Delete)


新增(Create

语法:

INSERT [INTO] table_name[(column [, column] ...)]VALUES (value_list) [, (value_list)] ...

1、首先创建一个学生表

DROP TABLE IF EXISTS student;
CREATE TABLE student (id INT,sn INT comment '学号',name VARCHAR(20) comment '姓名',qq_mail VARCHAR(20) comment 'QQ邮箱'
);

运行结果:

一、插入数据方式

1.单行数据+全列插入

INSERT INTO student VALUES(1,101,'张三','123@qq.com');
INSERT INTO student VALUES (2,201,'李四','1234@qq.com');

运行结果:

2、多行数据 + 指定列插入

insert into student (id,sn,name,qq_mail) values
(3,301,'王五','234@qq.com'),
(4,401,'赵六','345@qq.com');

运行结果:

 二、 查询(Retrieve

语法:

SELECT[DISTINCT] {* | {column [, column] ...} [FROM table_name][WHERE ...][ORDER BY column [ASC | DESC], ...]LIMIT ...

案列:创建一个考试成绩表

DROP TABLE IF EXISTS exam_result;
CREATE TABLE exam_result (id INT,name VARCHAR(20),chinese DECIMAL(3,1),math DECIMAL(3,1),english DECIMAL(3,1)
);

插入测试数据

INSERT INTO exam_result (id,name, chinese, math, english) VALUES(1,'唐三藏', 67, 98, 56),(2,'孙悟空', 87.5, 78, 77),(3,'猪悟能', 88, 98.5, 90),(4,'曹孟德', 82, 84, 67),(5,'刘玄德', 55.5, 85, 45),(6,'孙权', 70, 73, 78.5),(7,'宋公明', 75, 65, 30);

运行结果:

一、查询方式

1、全列查询

通常情况下不建议使用*全列查询
1、查询的列越多,意味着需要传输的数据量越大;
2、可能会影响到索引的使用。

select * from exam_result;

 运行结果:

2、指定列查询

指定列的顺序不需要按照表中的列顺序来。

select id,name,chinese from exam_result;

运行结果:

3、查询字段为表达式

-- 表达式不包含字段
SELECT id, name, 10 FROM exam_result;

 

-- 表达式包含一个字段
SELECT id, name, english + 10 FROM exam_result;

 

-- 表达式包含多个字段
SELECT id, name, chinese + math + english FROM exam_result;

4 、别名

为查询结果中的列指定别名,表示返回的结果集中,以别名作为该列的名称,语法:
SELECT column [AS] alias_name [...] FROM table_name;
这里的总分就是我们定义的别名:
SELECT id, name, chinese + math + english 总分 FROM exam_result;

运行结果:

5 去重:DISTINCT

使用DISTINCT关键字对某列数据进行去重:
比如我们这里对重复的数学成绩去重:
select distinct math from exam_result;

运行结果:

 6、 排序:ORDER BY

语法:

-- ASC 为升序(从小到大)
-- DESC 为降序(从大到小)
-- 默认为 ASC
SELECT ... FROM table_name [WHERE ...] ORDER BY column [ASC|DESC], [...];
1. 没有 ORDER BY 子句的查询,返回的顺序是未定义的,永远不要依赖这个顺序 。
2. NULL 数据排序,视为比任何值都小,升序出现在最上面,降序出现在最下面。
案例:-- 查询同学姓名和 English,按 English 排序显示
升序排列:
SELECT name, English FROM exam_result ORDER BY English;

降序排列:

SELECT name, English FROM exam_result ORDER BY English desc; 

运行结果:

7、条件查询 WHERE

当使用 SELECT 语句进行查询时,MySQL 允许用户对表达式的左边操作数和右边操作数进行比较,比较结果为真,则返回 1,为假则返回 0,比较结果不确定则返回 NULL。MySQL 支持的比较运算符如下表所示。

逻辑运算符:

1. WHERE条件可以使用表达式,但不能使用别名。
2. AND的优先级高于OR,在同时使用时,需要使用小括号()包裹优先执行的部分。

 案列演示

1、基本查询

-- 查询英语不及格的同学及英语成绩 ( < 60 )
SELECT name, english FROM exam_result WHERE english < 60;

-- 查询语文成绩好于英语成绩的同学
SELECT name, chinese, english FROM exam_result WHERE chinese > english;

运行结果:

 2、AND、OR

-- 查询语文成绩大于80分,且英语成绩大于80分的同学
SELECT * FROM exam_result WHERE chinese > 80 and english > 80;
-- 查询语文成绩大于80分,或英语成绩大于80分的同学
SELECT * FROM exam_result WHERE chinese > 80 or english > 80;
运行结果:

3、观察AND、OR优先级

select * from exam_result where chinese > 80 or math >70 and english >70;select * from exam_result where( chinese > 80 or math >70) and english >70;

 运行结果:

4、范围查询

1、between …… and……

查询语文成绩在80-90之间的学生姓名;

SELECT name, chinese FROM exam_result WHERE chinese BETWEEN 80 AND 90;

2、in

-- 查询数学成绩是 58 或者 59 或者 98 或者 99 分的同学及数学成绩
SELECT name, math FROM exam_result WHERE math IN (58, 59, 98, 99);

运行结果:

5、模糊查询:LIKE

-- % 匹配任意多个(包括 0 个)字符
SELECT name FROM exam_result WHERE name LIKE '孙%';__ 匹配到孙悟空、孙权
-- _ 匹配严格的一个任意字符
SELECT name FROM exam_result WHERE name LIKE '孙_';__ 匹配到孙权

运行结果:

6、 分页查询:LIMIT  

语法:

-- 起始下标为 0
-- 从 0 开始,筛选 n 条结果
SELECT ... FROM table_name [WHERE ...] [ORDER BY ...] LIMIT n;
-- 从 s 开始,筛选 n 条结果
SELECT ... FROM table_name [WHERE ...] [ORDER BY ...] LIMIT s, n;
-- 从 s 开始,筛选 n 条结果,比第二种用法更明确,建议使用
SELECT ... FROM table_name [WHERE ...] [ORDER BY ...] LIMIT n OFFSET s;

案例、按id进行分页,每页三条记录

select id,name,math,english,chinese from exam_result order by id limit 3 offset 0;
select id,name,math,english,chinese from exam_result order by id limit 3 offset 3;
select id,name,math,english,chinese from exam_result order by id limit 3 offset 6;

运行结果:

 四、 修改(Update

语法:

UPDATE table_name SET column = expr [, column = expr ...]
[WHERE ...] [ORDER BY ...] [LIMIT ...]
案列:
-- 将孙悟空同学的数学成绩变更为 80
UPDATE exam_result SET math = 80 WHERE name = '孙悟空';
-- 将总成绩倒数前三的 3 位同学的数学成绩加上 1
UPDATE exam_result SET math = math + 1 ORDER BY chinese + math + english LIMIT
3;
运行结果:

 五. 删除(Delete

语法:DELETE FROM  table_name [WHERE ...]

案列:删除孙权的考试成绩

DELETE FROM  exam_result where name = '孙权';

运行结果:(表中已无孙权的考试成绩)

 OK以上就是关于MySQL增删改查的基础部分全部内容了,学习MySQL难度不是很高,重要的是多加练习提高熟练度,还有在写MySQL语句的时候我们可以先在记事本上来提前写好语句然后在粘贴到MySQL上,这样有助于提高我们的学习效率,同时发现语句错误可以及时更改,博主后续会持续更新MySQL进阶增删改查的内容,创作不易,期待你的一键三连!

http://www.jmfq.cn/news/5092219.html

相关文章:

  • 手工活接单在家做有正规网站吗/seo是谁
  • 如何用ps做网站/广告视频
  • wordpress 做公司网站/关键词搜索站长工具
  • 关于网站开发的开题报告/有哪些推广平台和渠道
  • 翔安区建设网站/免费的网络推广渠道
  • 个人网站做淘宝客商城/好消息tvapp电视版
  • 国内公司网站需要备案/网络推广企划
  • 同样也是做严选的网站/360建站和凡科哪个好
  • 门窗企业网站建设/上海企业seo
  • 万年网站建设/成都网络推广公司
  • 地推/郑州关键词seo
  • 国内用react做的网站/网站优化排名软件推广
  • 有的网站为什么打不开怎么回事/天津关键词优化专家
  • 汕头教育学会网站建设/片多多可以免费看电视剧吗
  • 网站上哪个做相片书好/值得收藏的五个搜索引擎
  • 有哪些网站交互效果做的好的/河南郑州最近的热搜事件
  • 刚做淘客没有网站/seo自媒体运营技巧
  • 天津手机网站建设/武汉网站运营专业乐云seo
  • python建立简易网站/百度推广后台登陆入口
  • 在直播网站做前端注意/推广联盟平台
  • 找深圳网站建设/重庆seo排名方法
  • 芍药居网站建设公司/山西网络营销seo
  • 学软件开发的网站/seo优化排名百度教程
  • 免费自制app软件平台/长沙官网seo技术
  • 怎么样自己做百度网站/谷歌官网
  • 网站建设 中企动力公司/百度贴吧官网入口
  • 怎么查找网站建设/sem是什么公司
  • 北京百姓网/二十条优化
  • 网站备案换公司吗/营销型网站建设设计
  • 怎么看网站建设时间/百度如何免费推广