SQL
新一coding
自律的努力并坚持!
展开
-
MySQL事务与隔离级别
MySQL事务与隔离级别 MySQL 事务主要用于处理操作量大,复杂度高的数据。比如说,在人员管理系统中,你删除一个人员,你既需要删除人员的基本资料,也要删除和该人员相关的信息,如信箱,文章等等,这样,这些数据库操作语句就构成一个事务。在 MySQL 中只有使用了 Innodb 数据库引擎的数据库或表才支持事务。事务处理可以用来维护数据库的完整性,保证成批的 SQL 语句要么全部执行,要么全部不执行。事务用来管理DML(insert、update、delete)语句1. 事务四大特性:A原创 2020-08-19 20:07:45 · 169 阅读 · 0 评论 -
MySQL--常用函数总结
数学函数GREATEST[greatest]():获取一组数中的最大值。LEAST[least]():获取一组数中的最小值。FLOOR[floor]():获取小于一个数的最大整数值(向下取整)。CEILING[ceiling]():获取大于一个数的最小整数值(向上取整)。ROUND[round]():获取一个数的四舍五入的整数值。ROUND[round](x,d):获取一个数...原创 2020-02-07 23:10:09 · 466 阅读 · 0 评论 -
MySQL--UNION用法详解
UNION 操作符用于连接两个以上的 SELECT 语句的结果组合到一个结果集合中。## 使用前提> 每个SELECT语句的结果集列数一致(必须)> 每个SELECT语句的结果集列类型相似> 每个SELECT语句的结果集列的顺序一致## UNION两种用法的异同...原创 2020-01-07 16:43:15 · 516 阅读 · 0 评论 -
MySQL--隐藏手机号、身份证号三种方式
测试数据SELECT * FROM `userinfo`;方式一(最推荐)SELECT `name` AS '姓名', INSERT ( telephone, 4, 4, '****' ) AS '手机号', INSERT ( cardID, 4, 11, '***********' ) AS '身份证号' FROM userinfo;方式二...原创 2019-12-27 22:37:05 · 1234 阅读 · 0 评论 -
MySQL—子查询
定义在一个表表达中可以调用另一个表表达式,这个被调用的表表达式叫做子查询(subquery),我么也称作子选择(subselect)或内嵌选择(inner select)。子查询的结果传递给调用它的表表达式继续处理。分类按返回结果集分类子查询按返回结果集的不同分为4种:表子查询,行子查询,列子查询和标量子查询。 表子查询:返回的结果集是一个行的集合,N行N列(N>...转载 2019-12-27 22:32:35 · 602 阅读 · 0 评论 -
MySQL—group by深入理解
引言用了好久group by,今天早上一觉醒来,突然感觉group by好陌生,总有个筋别不过来,为什么不能够select * from Table group by id,为什么一定不能是*,而是某一个列或者某个列的聚合函数,group by 多个字段可以怎么去很好的理解呢?不过最后还是转过来了,简单写写吧,大牛们直接略过吧。表一数据原始表test:执行如下SQL语句,得到结...原创 2019-12-26 14:06:32 · 564 阅读 · 2 评论 -
MySQL--case when流程控制语句用法
case函数用于选择判断,只返回第一个符合条件的值,剩下的case部分将会被自动忽略。 有以下两种写法(本教程所用表以及数据见教程底部):简单case函数格式 CASE [col_name] WHEN [value1] THEN [result1]… ELSE [default] END示例#简单case函数SELECT ( CA...原创 2019-11-28 13:09:49 · 341 阅读 · 0 评论 -
MySQL中where与having区别
其实功能上WHERE和HAVING并无区别,都是做查询过滤。但是效率以及执行顺序并不一样。一般来说,where跟在from后,having跟在group by后,但不要错误的认为having和group by必须配合使用。从整体声明的角度来理解: “Where”是一个约束声明,在查询数据库的结果返回之前对数据库中的查询条件进行约束,即在结果返回之前起作用,且where后面不能使用“...原创 2019-11-25 17:59:59 · 224 阅读 · 0 评论 -
MySQL执行顺序分析
MySQL手写顺序 select distinct <select_list> from <table_name> <join_type> join <join_table> on <join_condition> where <where_condition> group b...原创 2019-11-25 17:36:57 · 300 阅读 · 0 评论 -
SQL简介及分类
SQL 是用于访问和处理数据库的标准的计算机语言。SQL 是什么?SQL,指结构化查询语言,全称是 Structured Query Language。 SQL 让您可以访问和处理数据库。 SQL 是一种 ANSI(American National Standards Institute 美国国家标准化组织)标准的计算机语言。SQL分类SQL语言按照实现的功能不同,主要分为以下...原创 2019-11-24 20:26:23 · 710 阅读 · 0 评论 -
数据库设计三大范式
范式:英文名称是 Normal Form,它是英国人 E.F.Codd(关系数据库的老祖宗)在上个世纪70年代提出关系数据库模型后总结出来的,范式是关系数据库理论的基础,也是我们在设计数据库结构过程中所要遵循的规则和指导方法。第一范式(1NF)强调的是列的原子性,即列不能够再分成其他几列。案例 现存在表:【联系人】(姓名,性别,电话)其中列属性“电话”可以再拆分为“...原创 2019-11-16 17:46:15 · 174 阅读 · 0 评论 -
Mysql扩展查询
在左连接查询中根据已有条件查询另一个表中符合条件的数据。案例一 根据查询到的当前会员Id与他上级Id,查找他上级Id在会员表中对应的昵称。SELECT (SELECT wechatNickname FROM gs_member WHERE id=r.pid) as 'pidName', r.pidFROM gs_member AS m LEFT JOIN gs...原创 2019-09-23 16:19:02 · 788 阅读 · 0 评论 -
Mysql判断查询(类似三元表达式)
格式:if(条件,语句一,语句二)Sql判断查询,类似三元表达式。参数一为条件,条件结果为true执行参数二语句,条件结果为false执行参数三语句。案例查询会员的余额,当该会员账户有余额,显示该余额,没有余额,显示值“0”。SELECTIF ( i.money = "" || i.money IS NULL, '0', i.money ) AS 'money' FROM...原创 2019-09-23 16:15:23 · 3156 阅读 · 0 评论 -
Mysql 计算用户余额
需求传入用户ID和需要添加(或减去)的金额money,并把结果转换为浮点数类型,重新保存。编码 UPDATE tablename SET money = CONVERT ( money + #{money}, DECIMAL ( 18, 2 ) ) WHERE id = #{id}扩展CONVERT(value, type):把当前数值转换成指定类型的值,但并不...原创 2019-09-23 10:48:11 · 1831 阅读 · 0 评论 -
数据库操作表数据基本语句
增SQL INSERT INTO 语句INSERT INTO 语句用于向表中插入新记录。SQL INSERT INTO 语法:INSERT INTO 语句可以有两种编写形式。第一种形式无需指定要插入数据的列名,只需提供被插入的值即可:INSERT INTO table_name(表名)VALUES (value1(取值),value2,value3,...);没有指定要...原创 2019-05-19 23:11:21 · 4246 阅读 · 0 评论