mysql
文章平均质量分 88
慕城南风
这个作者很懒,什么都没留下…
展开
专栏收录文章
- 默认排序
- 最新发布
- 最早发布
- 最多阅读
- 最少阅读
-
MySQL之虚拟列的详细讲解
MySQL 5.7引入了Generated Column,所谓Cenerated Column,就是数据库中的某一列由其他列计算而得。MySQL 5.7中,支持两种Generated Column,即Virtual Generated Column和Stored Generated Column,前者只将Generated Column保存在数据字典中(表的元数据),并不会将这一列数据持久化到磁盘上;后者会将Generated Column持久化到磁盘上,而不是每次读取的时候计算所得。原创 2022-10-31 12:05:48 · 4718 阅读 · 0 评论 -
Mysql 5.7 新特性之 json 类型的增删改查
mysql 5.7 新特性之 json 类型的增删改查等基本操作原创 2022-09-05 10:46:38 · 2969 阅读 · 0 评论 -
Lost connection to MySQL server during query的几种可能分析
Lost connection to MySQL server during query的几种可能分析原创 2022-07-07 16:51:07 · 14108 阅读 · 0 评论 -
Mysql提取表字段中的字符串
本文主要介绍SQL-字符串提取substr()/substring()/left()/right()/like()/rlike()/substring_index()操作/获取字符串长度length()/char_length()/character_length()/bit_length()以及正则匹配等操作字符串相关函数原创 2022-06-27 19:58:36 · 4266 阅读 · 0 评论 -
为什么大数据平台要回归SQL
SPL是一款专业的开源数据计算引擎,提供了独立的计算语法,整个体系不依赖关系数据模型,因此在很多方面都有长足突破,尤其在开发效率和计算性能方面。使用开源集算器SPL就可以作为SQL很好的替代和延伸,作为大数据平台专用的计算语言,延续SQL优点的同时改善其缺点。...............原创 2022-06-08 10:30:17 · 1721 阅读 · 2 评论 -
【MySQL】对JSON类型字段数据进行提取和查询
前言昨天上线后通过系统报警发现了一个bug,于是紧急进行了回滚操作,但是期间有用户下单,数据产生了影响,因此需要排查影响了哪些订单,对数据进行修复。1. 问题现象由于bug导致了订单表的customer_extra_info字段的hasFreightInsurance误更新成了“是”,因此需要查询回滚前一共有多少被误更新为“是”的订单,如下图:于是查看订单表中customer_extra_info字段类型发现是JSON类型的查询资料发现mysql5.7以后提供了一种新原创 2022-04-20 17:27:07 · 9053 阅读 · 1 评论 -
MySQL5.7之Json Column和Generated Column使用介绍
前言MySQL5.7新增两种字段类型:Json和Generated,Generated型的产生和Json的关系密不可分,如果没有Generated类型,Json类型再强大生产中可能也无法使用,因为Json不支持索引,但是如果要查询Json里的数据,没有索引就是全表扫描,在执行效率上肯定是不能用于生产环境的,但是有了Generated类型就不同了,Generated类型简单地说是一个虚拟字段,值是不可更新的,值来源其他字段或者字段间计算或是转化而来的,这种类型是可以创建索引,利用Generated的特性,原创 2022-04-02 12:06:28 · 2052 阅读 · 0 评论 -
SQL语句中ON DUPLICATE KEY UPDATE column=IF(条件,值1,值2 ) 的使用
Insert...on duplicate key相信大家都知道了,是一个非常好用的功能,可以在批量导入数据的时候插入并且保证在key冲突的时候执行更新操作而不是报错。笔者最近写代码的时候却碰到一个需求,就是想要在这个基础上根据某列的值来决定update后面的值,举个例子,如果columnA>0,那么更新columnB=1或者不更新,然后就在网上对duplicate key和update的用法大肆搜索一番,看有没有类似的用法,结果都是比较常规的用法,颇为失望。然后又想到普通的update是在后面加wh原创 2022-03-18 16:25:10 · 1988 阅读 · 1 评论 -
SQL语句中ON DUPLICATE KEY UPDATE的使用介绍
一:主键索引,唯一索引和普通索引的关系主键索引主键索引是唯一索引的特殊类型。数据库表通常有一列或列组合,其值用来唯一标识表中的每一行。该列称为表的主键。在数据库关系图中为表定义一个主键将自动创建主键索引,主键索引是唯一索引的特殊类型。主键索引要求主键中的每个值是唯一的。当在查询中使用主键索引时,它还允许快速访问数据。主键索引不能为空。每个表只能有一个主键唯一索引:不允许两行具有相同的索引值。但可以都为NULL,笔者亲试。如果现有数据中存在重复的键值,则数据库不允许将新创建的唯一索...原创 2022-03-15 18:19:49 · 997 阅读 · 0 评论 -
Mysql之drop、truncate和delete的区别
一、delete1、delete是DML,执行delete操作时,每次从表中删除一行,并且同时将该行的的删除操作记录在redo和undo表空间中以便进行回滚(rollback)和重做操作,但要注意表空间要足够大,需要手动提交(commit)操作才能生效,可以通过rollback撤消操作。2、delete可根据条件删除表中满足条件的数据,如果不指定where子句,那么删除表中所有记录。3、delete语句不影响表所占用的extent,高水线(highwatermark)保持原位置不变。(从I.原创 2020-12-09 09:46:55 · 420 阅读 · 2 评论 -
Mysql之alter用法汇总
为实现数据库中表规范化设计的目的,有时候需要对之前已经创建的表进行结构修改或者调整。在MySQL中可以使用ALTER TABLE语句来改变原有表的结构,例如增加或删减列、创建或取消索引、更改原有列类型、重新命名列或表等。基本语法修改表指的是修改数据库中已经存在的数据表的结构。MySQL 使用 ALTER TABLE 语句修改表。常用的修改表的操作有修改表名、修改字段数据类型或字段名、增加和删除字段、修改字段的排列位置、更改表的存储引擎、删除表的外键约束等。常用的语法格式如下:ALTER..原创 2020-12-08 19:06:36 · 1599 阅读 · 0 评论 -
MySQL之concat、concat_ws以及group_concat的使用
说明:本文中使用的例子均在下面的数据库表tt2下执行:一、concat()函数1、功能:将多个字符串连接成一个字符串。2、语法:concat(str1, str2,...)返回结果为连接参数产生的字符串,如果有任何一个参数为null,则返回值为null。3、举例:例1:select concat (id, name, score) as info from tt2;中间有一行为null是因为tt2表中有一行的score值为null。例2:在例1的结果中..原创 2020-12-07 18:03:16 · 260 阅读 · 0 评论 -
Mysql之count(*),count(1),count(field)区别、性能差异
前言三者有何区别:count(field)不包含字段值为NULL的记录。 count(*)包含NULL记录。 count(*)与count(1) 在InnoDB中性能没有任何区别,处理方式相同 count(1)与count(2)、count(3)......无异如果问一个程序员MySQL中SELECT COUNT(1)和SELECT COUNT(*)有什么区别,会有很多人给出这样的答案“SELECT COUNT(*)”最终会转化成“SELECT COUNT(1),而SELECT COUNT(原创 2020-12-07 17:18:35 · 1000 阅读 · 1 评论 -
Mysql之case when用法总结
前言Case具有两种格式:简单Case函数和Case搜索函数。1.简单Case函数case sex when '1' then '男' when '2' then '女' else '其他' end2.Case搜索函数case when sex = '1' then '男' when sex = '2' then '女' else '其他' end这两种方式,可以实现相同的功能。简单Case函数的写法相对比较简洁,但是和Ca原创 2020-12-07 14:50:20 · 4910 阅读 · 1 评论 -
Mysql之limit用法总结
LIMIT 子句可以被用于强制 SELECT 语句返回指定的记录数。LIMIT 接受一个或两个数字参数,参数必须是一个整数常量。如果给定两个参数,第一个参数指定第一个返回记录行的偏移量,第二个参数指定返回记录行的最大数目。初始记录行的偏移量是 0(而不是 1): 为了与 PostgreSQL 兼容,MySQL 也支持句法: LIMIT # OFFSET #。SELECT*FROMtableLIMIT[offset,]rows|rowsOFFSEToffset...原创 2020-12-07 10:24:02 · 7438 阅读 · 0 评论 -
Mysql 解决1251- Client does not support authentication protocol requested by server...的问题
一、问题描述使用Navicat客户端连接本地mysql,报错:1251- Client does not support authentication protocol requested by server;consider upgrading Mysql client二、查看用户信息打开命令行小黑屏,进入MySQL的bin目录,然后输入mysql -u root -p,输入密码,登录成功执行SQL查询用户信息select host,user,plugin,authen.原创 2020-06-13 10:07:10 · 86149 阅读 · 48 评论 -
MySQL安装教程及安装过程中出现no compatible servers were found的解决办法
一、下载MySQL首先,去数据库的官网http://www.mysql.com下载MySQL。点击进入后的首页如下:然后点击downloads,community,选择MySQL Community Server。如下图:滑到下面,找到Recommended Download,然后点击go to download page。如下图:点击download进入下载页面选择No thanks, just start my download就可以开始下载了,当然你要是想注册也可以注册一下。...原创 2020-06-12 23:18:36 · 34340 阅读 · 12 评论
分享