7 只是甲

尚未进行身份认证

我要认证

暂无相关简介

等级
TA的排名 10w+

MySQL 判断字符串是不是数字字符类型

备注:测试数据库版本为MySQL 8.0如需要scott用户下建表及录入数据语句,可参考:scott建表及录入数据sql脚本一.需求需要判断字符串中是否只包含数字和字符,如果包含其他的,不显示数据二.解决方案这类需求,只能考虑使用正则表达式来解决代码create view v asselect ename as data from empwhere deptno = 10union allselect concat(ename,',$',cast(sal as char(4) ),

2020-09-21 10:13:38

MySQL 从字符串中删除不需要的字符

备注:测试数据库版本为MySQL 8.0如需要scott用户下建表及录入数据语句,可参考:scott建表及录入数据sql脚本一.需求将emp表中的元音字母 AEIOU都去除掉二.解决方案通过MySQL的replace函数进行多次替换可以解决这个问题也可以通过MySQL的正则表达式来处理代码:select ename,replace(replace(replace(replace(replace(ename,'A',''),'E',''),'I',''),'O',''),'U','') a

2020-09-18 10:53:00

MySQL 计算字符在字符串中出现的次数

备注:测试数据库版本为MySQL 8.0一.需求计算一个字符或子串在给定的字符串中出现的次数。例如:10,CLARK,MANAGER要计算在这个字符串中有多少个逗号。二.解决方案首先计算原始字符串的长度,然后计算去掉逗号后字符串的长度,这两者的差就是逗号在该字符串中出现的次数。MySQL中使用replace和length函数即可代码:select (length('10,CLARK,MANAGER') - length(replace('10,CLARK,MANAGER

2020-09-17 09:17:19

MySQL 字符串中包含引号

备注:测试数据库版本为MySQL 8.0一.需求sql中引号是个特殊的存在,经常需要进行输出例如,我想输出"I’m a boy" 这个里面就有一个单引号二.解决方案测试记录mysql> select 'I''am a boy';+------------+| I'am a boy |+------------+| I'am a boy |+------------+1 row in set (0.00 sec)mysql> select '''' ;+---+|

2020-09-16 09:20:34

MySQL 遍历字符

备注:测试数据库版本为MySQL 8.0如需要scott用户下建表及录入数据语句,可参考:scott建表及录入数据sql脚本一.需求遍历一个字符,并将其中的每个字符都作为一行返回,但是sql没有循环操作例如:要将表EMP中ENAME值为’KING’的字符串显示为4行,每行中都包含"KING"中的一个字符二.解决方案使用笛卡尔积生成行号,用来在该行中返回字符串中的每个字符。然后使用MySQL内置的字符串分析函数来摘出所要的字符。代码:-- 解决 t10这样一个表来形成笛卡尔积sele

2020-09-16 09:18:46

MySQL 使用sql来生成sql

备注:测试数据库版本为MySQL 8.0一.需求我想查询某个库下所有表的总记录数二.解决方案-- 通过系统表 拼接sqlselect concat('select count(*) from ',table_name,';') tab_count from information_schema.tables where table_schema = 'ZQS';-- 拷贝输出进行执行select count(*) from area_admin_contrast;select coun

2020-09-15 09:08:41

MySQL kill使用案例

MySQL数据库版本 8.0.17文章目录前言一.查询表大小二.碎片整理参考文献:前言业务有需求,将一张大表 1000w+数据,需要从Oracle数据库全量同步到MySQL前DBA用python写的脚本,每天全量同步一次,先delete再insert现在表的空间已经差不多2G了,需要进行清理一.查询表大小select concat(round(sum(DATA_LENGTH/1024/1024),2),'MB') as data from information_schema.TABLES w

2020-09-15 09:05:33

MySQL 优化之压缩

环境:MySQL 8.0一.描述一些不常用的表数据量太大,需要压缩表进行空间清理-- 表结构mysql> show create table t1\G*************************** 1. row *************************** Table: t1Create Table: CREATE TABLE `t1` ( `id` int DEFAULT NULL, `name` varchar(1000) DEFAULT N

2020-09-14 09:13:15

Oracle 11g开机自启动

一些测试机器,频繁重启,需要DBA手工来启数据库设置成开机自启动后,DBA就可以不用管这个一.编辑/etc/oratab文件先查看ORACLE_HOME目录*********>echo $ORACLE_HOME/oracle/ora11g/db修改配置文件vi /etc/orata将orcl:/oracle/ora11g/db:N 修改为 orcl:/oracle/ora11g/db:Y二.添加数据库启动脚本dbstartvi /etc/rc.d/rc.local新增

2020-09-11 14:49:36

Oracle-求素数

需求:求200w以内的素数素数是只能被1和自身整除的数,1不是素数一.SQL版先用2w进行测试-- 非1和自身,只要有整除的,通过not exists 剔除 WITH t AS (SELECT rownum+1 rn FROM dual CONNECT BY rownum <= 20000 -1),t1 AS (SELECT rownum+1 rn FROM dual CONNECT BY rownum <= 20000 -1)SELECT count(*) FROM t

2020-09-11 09:21:52

堪比培训机构的MySQL系列博客

这个blog,我整理了我之前写的MySQL开发系列和MySQL运维系列,知识丰富程度堪比培训机构个人能力有限,如有错误的地方,欢迎指正。文章目录一.MySQL开发系列1.1 MySQL 行转列1.2 MySQL 常用的函数1.3 MySQL 表连接1.4 MySQL分组语句小结1.5 MySQL with语句1.6 MySQL高级窗口函数1.7 MySQL正则表达式1.8 MySQL编程二.MySQL运维系列2.1 MySQL安装2.2 MySQL体系结构2.3 MYSQL启动和关闭2.4 MySQL配

2020-09-09 12:19:46

MySQL 通过sql输出99乘法表

备注:测试数据库版本为MySQL 8.0代码-- 用with递归构造1-9的数据with RECURSIVE c(n) as (select 1 n union all select n + 1 from c where n < 9),tmp1 as(SELECT c1.n n1,c2.n n2,CONCAT(c1.n,' * ',c2.n,' = ',c1.n*c2.n) expfrom c c1inner join c c2on c1.n <= c2.n)selec

2020-09-08 11:23:40

MySQL 运维管理工具--pt(Percona-toolkit)

文章目录一.检查和安装与Perl相关的模块二.下载和安装percona toolkit的包2.1 下载和安装percona toolkit的包2.2 安装percona-toolkit工具包2.3 percona-toolkit工具介绍2.3.1 pt-archiver(归档表)2.3.2 pt-online-schema-change(在线修改表结构)2.3.3 pt-table-checksum2.3.4 pt-table-sync2.3.5 pt-deadlock-logger(死锁检测)2.3.6

2020-09-08 09:27:38

MySQL 元数据查询

备注:测试数据库版本为MySQL 8.01.查看某个数据库下的表名select table_namefrom information_schema.tableswhere table_schema = 'ZQS';测试记录mysql> select table_name -> from information_schema.tables -> where table_schema = 'ZQS';+---------------------+| TABLE

2020-09-07 09:00:20

MySQL数据恢复工具之MyFlash

文章目录概述一.MyFlash安装1.1 在线安装1.2 离线安装二.MyFlash参数2.1 参数介绍2.2 语法举例三.MyFlash测试案例3.1 数据准备3.2 测试恢复DML3.3 测试DDL恢复参考:概述MyFlash是美团开发的一个回滚DML操作的工具,该工具是开源的,github地址为:https://github.com/Meituan-Dianping/MyFlash。通过该工具,可以实现MySQL数据库的闪回。优点1.如果binlog日志保留,可以闪回到任意时间2.可以针对实

2020-09-07 08:55:55

MySQL 用其它表的值更新数据

备注:测试数据库版本为MySQL 8.0如需要scott用户下建表及录入数据语句,可参考:scott建表及录入数据sql脚本测试数据准备:mysql> create table new_sal(deptno int,sal int) character set utf8mb4;Query OK, 0 rows affected (0.02 sec)mysql> insert into new_sal values (10,4000);Query OK, 1 row affecte

2020-09-04 09:35:53

MySQL 数据恢复工具之binlog2sql

文章目录概述一.安装pip和binlog2sql1.1 安装步骤1.2 安装python31.3 安装新版本openssl1.4 pip安装报错11.5 pip安装报错21.6 pip安装binlog2sql报错二.binlog2sql参数相关2.1 binlog2sql参数2.2 mysql server相关参数2.3 用来闪回数据的user需要的最小权限集合三.binlog2sql使用案例3.1 数据准备3.2 使用binlog2sql找到恢复sql参考文献:概述github连接:https://g

2020-09-04 09:33:01

MySQL阻止对某几列插入

备注:测试数据库版本为MySQL 8.0如需要scott用户下建表及录入数据语句,可参考:scott建表及录入数据sql脚本问题:防止用户或是错误的软件应用程序对某几列插入数据。例如,只允许某个程序向EMP表中插入EMPNO、ENAME和JOB列。解决方案:在表中创建一个视图,该视图将只显示允许用户进行操作的列,强制所有的插入操作都通过该视图进行。例如,创建一个只显示表EMP中特定3列的视图:create view new_emps asselect empno,ename,jobf

2020-09-03 09:20:55

MySQL 工具之mysqldumper介绍

文章目录概述一.mysqldumper安装二.参数介绍2.1 mydumper参数详解2.2 myloader参数详解三.使用案例3.1 测试数据准备3.2 备份test库下的t1和t2两张表3.3 恢复数据四.mydumper正则拓展参考文献:概述mysqldump无法并行,这点与Oracle的expdp相比,存在一定的劣势,但是开源的mysqldumper是一个很好的补充。mydumper(http://www.mysqldumper.org/)是一个在GNU GPLv3许可下发布的高性能MySQ

2020-09-03 09:17:01

MySQL检测两个表中是否有相同数据

备注:测试数据库版本为MySQL 8.0如需要scott用户下建表及录入数据语句,可参考:scott建表及录入数据sql脚本问题:要知道两个表或视图中是否有相同的数据(基数和值)。考虑这个视图create view vasselect * from emp where deptno != 10union allselect * from emp where ename = 'WARD';select * from v;mysql> create view v -&gt

2020-09-02 09:29:53

查看更多

勋章 我的勋章
  • 签到达人
    签到达人
    累计签到获取,不积跬步,无以至千里,继续坚持!
  • 阅读者勋章Lv2
    阅读者勋章Lv2
    授予在CSDN APP累计阅读博文达到7天的你,是你的坚持与努力,使你超越了昨天的自己。
  • 持之以恒
    持之以恒
    授予每个自然月内发布4篇或4篇以上原创或翻译IT博文的用户。不积跬步无以至千里,不积小流无以成江海,程序人生的精彩需要坚持不懈地积累!
  • 勤写标兵Lv4
    勤写标兵Lv4
    授予每个自然周发布9篇以上(包括9篇)原创IT博文的用户。本勋章将于次周周三上午根据用户上周的博文发布情况由系统自动颁发。