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

深度网络技术山西seo顾问

深度网络技术,山西seo顾问,网站型跟商城型,女生化妆品网站建设规划书人们之所以不愿改变,是因为害怕未知。但历史唯一不变的事实,就是一切都会改变。 前言 这是我自己学习mysql数据库的第四篇博客总结。后期我会继续把mysql数据库学习笔记开源至博客上。 上一期笔记是关于mysql数据库的表格约束,没看的同学可以…

人们之所以不愿改变,是因为害怕未知。但历史唯一不变的事实,就是一切都会改变。 

前言

 这是我自己学习mysql数据库的第四篇博客总结。后期我会继续把mysql数据库学习笔记开源至博客上。

  上一期笔记是关于mysql数据库的表格约束,没看的同学可以过去看看:

【MySQL】从零开始:掌握MySQL数据库的核心概念(三)-CSDN博客https://blog.csdn.net/hsy1603914691/article/details/146385371

表格的增删查改

增 

正常插入

//指定列单行插入
insert into tb_name() values();
//全列单行插入
insert into tb_name values();
//指定列多行插入
insert into tb_name() values(),();
//全列多行插入
insert into tb_name values(),();

冲突插入 

//插入更新
insert into tb_name() values() 
on duplicate key update column_name1=xxx,column_name2=yyy,...;
//替换更新
replace into tb_name() values(); 

1. 此时无法正常插入,已经存在冲突数据主键值重复或者唯一键值重复

2. insert into插入更新时,会存在以下情况:

  • -- 0 row affected: 表中有冲突数据,但冲突数据的值和update的值相等。
  • -- 1 row affected: 表中没有冲突数据,数据被插入。
  • -- 2 row affected: 表中有冲突数据,并且数据已经被更新。

3. replace into替换更新时,会存在以下情况:

  • -- 1 row affected: 表中没有冲突数据,数据被插入。
  • -- 2 row affected: 表中有冲突数据,删除后重新插入。

查询插入

insert into tb_name select ...;

1. 除了向表格中插入具体的数据,还可以向表格中插入查询出来的数据。 

删 

delete子句-turncate子句

//删除表格的数据
delete from tb_name ...;
//重置表格
turncate table tb_name;

1. turncate只能对整个表格进行操作,不能像delete一样针对部分数据操作。

2. turncate会重置auto_increment项。

3. 实际上turncate不对数据操作,所以比delete更快,但是turncate在删除数据的时候,并不经过真正的事物,所以无法回滚。

查 

整体查询

//全列查询
select * from tb_name;
//指定列查询
select column_name1 column_name2 from tb_name;
//表达式运算查询
select column_name1 as new_name1 column_name2+column_name3+num as new_name2 from tb_name;
//去重查询
select distinct column_name1 from tb_name;

1. 通常情况下不建议使用全列查询

  • 查询的列越多,意味着需要传输的数据量越大。
  • 可能会影响到索引的使用。

条件查询

运算符
算术运算符
>,>=,<,<=
大于,大于等于,小于,小于等于
=
等于, null  不安全
!=
不等于
between a and b
范围匹配, [a,b] ,如果 a<=value<=b ,返回 true(1)
in(option,...)
如果是 option中的任意一个,返回true(1)
is null
是null
is not null不是null
like
模糊匹配。其中 % 表示任意多个(包括 0 个)任意字符; _ 表示任意一个字符。
逻辑运算符
and与运算,多个条件必须都为true(1),结果才是true(1)
or并运算,任意一个条件为true(1),结果为true(1)
not非运算,条件为true(1),结果为false(0)
where子句
select ... from ... where ...

1. 语法上,先执行from...,再执行where...,最后执行select...。所以在where子句中,不能使用select...中定义的别名。

2. where子句中可以使用圆括号()来限制先后逻辑。

改 

修改数据

update tb_name set column_name_change ...;

1. column_name_change大部分以重新赋值的形式呈现。

查询排序 

//升序
asc
//降序
desc
//
select ... from ... where ... order by column_name1 sort_order;

1. 在order by子句中,默认升序排序

2. NULL值也参与排序,但是视为比任何值都小

3. 语法上,先执行from...,再执行where...,然后执行select...,最后执行order by...。所以在where子句中,不能使用select...中定义的别名,但是在order by子句中,可以使用select...中定义的别名。

分页筛选 

//从下标为0的数据开始,往后筛选n条数据
select ... from ... where ... limit n;
//从下标为s的数据开始,往后筛选n条数据
select ... from ... where ... limit n offset s;

1. 对未知表进行查询时,最好加上:limit 1。避免因为表中数据过大,查询全表数据导致数据库卡死。

聚合函数

count()
返回查询到的数据的数量
sum()
返回查询到的数据的总和,不是数字没有意义
avg()
返回查询到的数据的平均值,不是数字没有意义
max()
返回查询到的数据的最大值,不是数字没有意义
min()
返回查询到的数据的最小值,不是数字没有意义
select func(column_name) from tb_name;

1. 聚合函数视为一个整体,相当于一个新的变量

分组查询 

select func(column_name1) from tb_name group by column_name2 having ...;

1. 分组的目的是为了更好的进行分组聚合统计

2. 分组的依据一般是指定的列名,根据该列的不同数据来进行分组。

3. where主要是对具体的某一列进行条件筛选,having主要是对分组后的结果进行条件筛选。

4. wherehaving的条件筛选的阶段是不同的。

致谢 

  感谢您花时间阅读这篇文章!如果您对本文有任何疑问、建议或是想要分享您的看法,请不要犹豫,在评论区留下您的宝贵意见。每一次互动都是我前进的动力,您的支持是我最大的鼓励。期待与您的交流,让我们共同成长,探索技术世界的无限可能!

http://www.dtcms.com/wzjs/224217.html

相关文章:

  • 网站在线客服如何做专业seo优化公司
  • 科技公司网站php源码seo资料站
  • 故城建设局政府网站如何自建网站?
  • 中国摄影在线网站百度搜索关键词
  • 独立网站做seo优化如何推广自己的店铺
  • 凤翔做网站高级seo招聘
  • 2018网站建设高考成绩查询优化设计官网
  • 生产营销网站开发联系方式如何进行市场推广
  • 海口智能建站模板优化科技
  • 网站建设维护培训河北网站建设案例
  • 投标网站怎么做百度旗下产品
  • 做网站设计用什么软件免费网站搭建
  • 成都市住房和城乡建设局网站优化大师客服
  • 巴南区网站建设班级优化大师官方网站
  • 荔枝视频在线观看高清完整版上海seo公司哪家好
  • 易语言做网站图片下载如何找友情链接
  • 仿糗事百科网站源码dede二次开发分享+评论+互动卢镇seo网站优化排名
  • 怎样制作网站站点百度快照搜索引擎
  • 做网站要了解的事情竞价托管推广多少钱
  • 网站建设商城制作洛阳seo博客
  • 何做好网站建设销售百度seo2022
  • 台湾wordpressseo视频网页入口网站推广
  • 网站建设静态代码产品推广找哪家公司
  • 网站空间购买时选择什么脚本语言网络媒体软文案例
  • 网站优化排名教程关键词密度
  • 做IPv6网站升级的公司有哪些微指数查询
  • 石家庄做网站电话seo群发软件
  • 营销型网站建设的注意事项线上推广引流渠道
  • 大连 做网站东莞seo推广
  • 交易猫钓鱼网站制作教学简短的营销软文范文