- 博客(41)
- 资源 (3)
- 问答 (3)
- 收藏
- 关注
原创 MYSQL处理JSON数据处理
数据表中有存有JSON数据,不能直接食用,需要拆解,利用MYSQL进行JSON数据处理select JSON_EXTRACT('JSON字段','$.Key') ;语句很简单,主要是要注意两点1、JSON_EXTRACT 可以嵌套使用:往往一次解析无法拿到结果,可以嵌套获取JSON数据。2、JSON中有[], 可以在字段后用[0]\[1]\[2] 进行数据获取。SELECT JSON_EXTRACT(JSON_EXTRACT(JSON_EXTRACT(a.retinfo,'$.res
2022-05-26 16:34:30
1027
原创 MySQL数据库利用存储过程定时分表
ETL通常会往一张表中不断的灌数,但是如果表中数据量庞大会降低效率。存储过程分表CREATE DEFINER=`root`@`%` PROCEDURE `fenbiao_auto`()BEGIN #Routine body goes here... DECLARE startdate varchar(255); -- 上月第一天 DECLARE enddate varchar(255); -- 上月最后一天 DECLARE lastmonth_num varchar(255); --
2022-05-25 15:33:45
512
原创 用存储过程进行历史数据处理
背景:我们有时会进行历史数据处理,但是处理起来很麻烦却很简单(只需要更改日期)。我们可以利用存储过程进行数据处理。核心思想是固定SQL形式,变化日期进行不同日期数据获取。通过rnx的变化得到的NextDate就是一个变化的日期。CREATE DEFINER=`root`@`localhost` PROCEDURE `guanjia`()BEGIN #Routine body goes here...-- DECLARE BeginDate varchar(255); DECLARE Ne
2022-05-16 16:56:55
317
原创 mysql服务优化
今天设置了innodb_buffer_pool_size首先查询buffer_pool_sizeshow global variables like 'innodb_buffer_pool_size';然后设置新的值set global innodb_buffer_pool_size=2147483648 ;这样就把pool_size更改为2G,原来是128M
2022-04-28 10:27:07
891
转载 MYSQL获取时间
1.本月第一天select date_add(curdate(), interval - day(curdate()) + 1 day);2.本月最后一天select last_day(curdate());3.上个月第一天select date_add(curdate()-day(curdate())+1,interval -1 month);4.上个月最后一天select last_day(date_sub(now(),interval 1 month));5.下
2022-04-26 14:13:02
304
1
原创 mysql join表on的连接字段避开默认为null的字段
背景:在最近的工作中遇到 LEFT JOIN 表没有得到预期数据的问题,经过排查原因竟然是表字段默认为NULL导致的。用navicat新建两张表,ltable_null,rtable_null。建表都默认为null。插入测试数据如下执行一下SQL,发现没有得到我们想要的数据。SELECT a.name2,a.name3,b.datas FROM Ltable_null aLEFT JOIN Rtable_null b on a.name2=b.name2 AND a.
2022-04-14 11:16:11
1045
原创 mysql存储过程进行循环取数
为了完成从表中获取所有带有 关键字 的数据,写了一个存储过程循环取数。1、第一步是将所有的关键字插入到一张mysql表中,ID主键自动增长。2、存储过程自动获取关键字CREATE DEFINER=`root`@`localhost` PROCEDURE `获取有关键词数据test2`()BEGIN #Routine body goes here... DECLARE nums INT DEFAULT 1; DECLARE keywords varchar(255); DECLAR
2022-02-25 15:37:06
1848
原创 mysql 时间日期处理
将字符串格式的时间日期转为dateSELECT DATE(SUBSTR(a.liushui,1,8)), a.* FROM testdate a ;获取到某日期时间前N天的时间日期SELECT DATE_SUB(a.vdata_date,interval 90 day), a.* FROM testdate a ;
2022-01-26 13:35:18
485
1
转载 mysql导出参数说明
--all-databases , -A导出全部数据库。mysqldump -uroot -p --all-databases--all-tablespaces , -Y导出全部表空间。mysqldump -uroot -p --all-databases --all-tablespaces--no-tablespaces , -y不导出任何表空间信息。mysqldump -uroot -p --all-databases --no-tablespaces--add-drop-...
2022-01-24 14:39:13
344
1
原创 巧妙使用ROW_NUMBER()函数删除重复数据
在工作中通常会处理一些异常的数据,异常数据中重复数据最为常见。下面介绍一种用ROW_NUMBER()处理异常数据的办法。可以挑选出其中的一条保留其他数据清理掉。如图如图中数据所示每一个accept 都有多个,但是只需要一个。我们可以通过一下语句挑选出来-- 去除重复acceptSELECT * from (SELECT ROW_NUMBER() over(PARTITION by z.accept ) rn ,z.* FROM data202201 z WHERE z.acc
2022-01-20 16:31:54
3765
原创 记录一次Mysql大量数据导出
本次的Mysql导出让我感受到了,知识就是力量!!……大量的数据通过Navicat导出在进行导入会花费巨量的时间,本次我导出的sql文件有1G多,我用命令:source XX.sql 运行了一天一夜都没有导完,被迫中止。。。。人间正道:数据表数据导出:mysqldump -u用户 -p密码 数据库 表名称> 导出的文件名称.sqlmysqldump -uroot -proot voice_data_2021 202110_screen > 202110_screen.sq
2022-01-12 10:52:02
994
原创 SQL中EXISTS与delete搭配使用
对一张表的数据进行删除,因为要根据此表某字段进行筛选删除并且要根据另外一个表的数据筛选,数据量巨大用IN操作拖累效率,所以用exists进行数据选择删除,提高效率。DELETE FROM test_some s WHERE EXISTS( SELECT 1 FROM (SELECT device_mac FROM test_big b GROUP BY device_mac HAVING COUNT(device_mac) >1)b WHERE s.device_mac
2022-01-07 16:45:10
4459
1
原创 easy-rsa 制作openXXX证书
1、到easy-rsa安装目录cd /usr/share/easy-rsa2、准备制作CA证书钱可以根据自己的需要修改vars文件。意义不大省略。需要注意的是:修改完毕后 运行source vars命令使其生效。3、开始正式制作CA证书,使用如下命令:./clean-all./build-ca出现提示信息按回车键即可。制作完成后,ca证书可在keys目录查看。4、制作Server端证书./build-key-server vpnserver //vpnserver为se
2021-12-08 15:45:57
1449
转载 虚拟机virtualbox中挂载新硬盘
1.添加新硬盘设置 -> Storage -> SATA控制器->右击,选择“添加虚拟硬盘”然后,根据需求创建合适的硬盘2.重启虚拟机 查看现有系统的磁盘空间sudo fdisk -l 可看到新加的虚拟硬盘,一般名为:Disk /dev/sdb3.给新加的硬盘分区 fdisk /dev/sdb 键入m,可看到帮助信息 ...
2020-11-10 10:26:02
663
原创 Docker的一般使用命令
docker远程镜像查看docker search tomcatdocker远程镜像获取docker pull 镜像名称docker本地镜像查询docker imagesdocker第一次启动镜像docker run -d -p 1521:1521 --name oracle11g registry.cn-hangzhou.aliyuncs.com/helowin/oracle_11g 参数释义: -p 本机端口和容器启动端口映射 -d 后
2020-11-09 16:43:21
83
原创 分页查询基础思想
分页处理基础变量currentPage //当前所在页面lineSize //每页显示的行数优化分页查询select * from (select mid,name,rownum rn from emp where rownum<=?1 ) tmpwhere tmp.rn>?2?1= currentPage * lineSize //先取大?2= (currentPage -1) * lineSize ...
2020-10-12 17:54:40
170
原创 oracle 实现字段自动增长
创建sequenceCREATE SEQUENCE SEQUENCENAME INCREMENT BY 1 -- 每次加几个 MINVALUE 10000 --设置最小值MAXVALUE 99999 --设置最大值--NOMAXVALUE -- 不设置最大值START WITH 1 -- 从1开始计数 NOCYCLE -- 一直累加,不循环 --CYCLE -- 循环NOCACHE -- 设置不缓存--CACHE 10; --设置缓存cache个序列,如果系统down掉了或者其它情况
2020-08-20 14:23:32
569
原创 oracle 数据库数据导出
查询默认的dump操作保存路径select * from dba_directories where directory_name='DATA_PUMP_DIR'; ----查询默认dump路径创建导入导出操作目录create directory EXPDIR(目录名称) as '/data/服务器目录名';给用户授权拥有操作目录的读写权限grant read,write on directory EXPDIR(目录名称) to Xxx(用户名);已有目录名称更换目录...
2020-08-18 10:25:04
854
原创 在Linux 使用中用到的命令积累
1、开启6081端口iptables -I INPUT -p tcp --dport 6081 -j ACCEPT2、添加启动服务命令systemctl //自查systemctl 可以自查本文档3、查看端口是否开启监听netstat -tlnp|grep 8000...
2020-07-29 17:57:24
153
1
转载 Oracle 获取本周、本月、本季、本年的第一天和最后一天
Oracle 获取本周、本月、本季、本年的第一天和最后一天--本周select trunc(sysdate, 'd') + 1 from dual;select trunc(sysdate, 'd') + 7 from dual;--本月select trunc(sysdate, 'mm') from dual;select last_day(trunc(sysdate)) from dual;--本季select trunc(...
2020-07-07 14:21:10
285
原创 mysql 基础常用命令
登陆数据库mysql -u 用户名 -p --用户登陆创建数据库create database 数据库名字 character set utf8;创建用户create user 用户名字@'localhost' identified by '用户密码';用户授权grant all on 数据库名字.* to 用户名@'%' identified by '密码';...
2019-11-24 22:17:05
118
原创 邮箱服务器搭建Postfix+Dovecot
我是在Debian服务器上进行的搭建搭建过程参考debian 社区文档点击我查看原文原文是在测试环境上(内网中进行的测试),我是在互联网中进行的。一、将解析IP解析到域名 首先第一步需要将A类型记录 mail.XXXX.com 解析到IP 再将MX类型记录 解析到 mail.XXXX.com二、软件安装解析完成后,就可以按照社区文档进行...
2019-10-21 00:01:32
754
2
原创 ORACLE 时间日期处理小记
Oracle 的时间格式很多,最常见的格式类型就是 yyyymmdd 形式。当然如果遇到其他的时间类型就需要花点时间进行转换了。今天说的是如何获取几个月前的时间日期*表中存有yyyy-mm-dd varchar2 类型的 字段 data_dt1、获取前一年的数据 (很少会有需求是查找前一年的数据)select * from table a where substr(to_cha...
2019-09-26 16:42:24
181
原创 sublime text 3 的使用
一个编辑器说实话,很好用但是需要安装各种插件,这种编辑器第一次遇到……一、一开始安装一个汉化包能够帮助你快速的上手使用这个编辑器用Package Control安装插件的方法:1、按下Ctrl+Shift+P调出命令面板2、输入install 调出 Install Package 选项并回车,然后在列表中选中要安装的插件然后在弹出的命令界面,输入Chinese,选择ChineseLo...
2019-09-20 17:54:56
133
原创 web sphere 添加新数据源
一、设置全局J2C1、添加J2C认证2、新建3、设置连接别名 用户名密码 点击应用二、新建数据源1、点击 资源>JDBC>数据源。根据之前的配置选择作用域。点击新建2、点击新建 输入数据源名、JNDI名称,点击下一步3、选择现有JDBC提供程序 (10g、11g的JDBC可能程序不同?)4、输入URL、选择对应数据库 版本的辅助...
2019-09-03 11:16:59
290
原创 ORACLE 在 linux 中的基础使用
因为有强大的第三方工具,现在大家可能几乎不会在linux的命令行中使用SQL进行查询了,但是有一些ORACLE数据字典的内容还是需要在linux的命令行中进行连接数据库进行查询今天用命令行连接ORACLE数据库是时候,很尴尬。竟然还有export ORACLE_SID=crmdb1 的操作1、查看现在是在那个数据库环境中 (用ORACLE用户登陆)echo $ORACLE_S...
2019-08-06 17:07:46
514
原创 docker安装nectcloud 连接 mysql数据库
第一步:安装docker此步骤略第二步:docker pull mysql:5 //我拉取的是mysql5 的版本镜像 可以用docker search mysql 来查找镜像第三步:docker pull nextcloud //拉取nextcloud镜像第四步:创建Mysql容器 docker run --name=nextcloud_db -e MY...
2019-07-05 23:40:47
3086
原创 web sphere更改was控制台管理员密码
本教程针对的是已知现有控制台管理密码来更改管理员密码的方法1、用管理员账户登陆was控制台 2、点击左侧导航栏中的 用户和组 -- 管理用户 点击搜索找到要更改密码的用户3、点击要更改密码账户的用户标识4、在密码框中输入要更改的密码,在确认密码框中重复输入要更改的密码(密码不为空)5、点击应用...
2019-06-05 09:34:01
4511
转载 ORA-14402: updating partition key column would cause
今天在生产上执行一个update,报出ORA-14402: updating partition key column would cause a partition change。原因是修改分区字段所引起的。update schema.table_nameset time_a = time_bwhere code_a = xxxxxxxxxxxxxxxxand status ...
2019-05-30 09:39:32
2354
原创 win10快捷键小技巧
学会了这些常用的快捷键真的是会提高效率打开设置(Win + I )打开文件管理器(Win+ E)打开操作中心(Win+A)打开搜索(Win + S)打开「连接」设备(Win+K)打开投影仪(WIN+P)打开云剪贴板(Win + V)显示桌面( Win+D)锁定桌面(Win+L)召唤Windows截图...
2019-05-19 21:59:43
259
转载 unix周期执行指令Crontab命令
导言:查看服务是否已经启动并运行1、ps -ef| grepxxxx (xxxx写你想查看的进程,比如tomcat)在unix服务器中添加定时任务链接主要内容:简单解释一下crontab - * -e 编辑,类似 vim,保存退出时会检查语法 -l 列举所有任务 -r 删除所有任务如果 crontab 运行出错,可以查看日志文...
2019-03-27 14:39:09
271
原创 Oracle 学习笔记
数据库的最基本的东西就是增删改查 主要需要掌握的关键字有 SELECT、FROM 、WHERE、 GROUP BY 、 HAVING、 ORDER BY、 CREATE、 DROP 、ALTER、 GRANT、 REVOKE一、数据查询基本语法 SELECT [DISTINCT] * | 列名称[别名],列名称[别名],…… FROM 表名称【别名】WHERE 条件 ; 最基本的语句...
2019-03-19 22:36:53
127
原创 GIT中会用到的一般命令
git安装完毕后,需要进行git的全局属性的配置 git config -- global user.name 'GIT的用户名' ——配置GIT的用户名 git config -- global user.email 'GIT的邮箱' ——配置GIT的邮箱 ...
2019-01-28 23:17:45
179
2
原创 以FRP为例,讲述Centos6 添加开机启动等服务
首先先新建一个 写有命令的可执行文件 vi /usr/local/frp/start_frp nohup /usr/local/frp/frp_0.23.1_linux_amd64/frps -c /usr/local/frp/frp_0.23.1_linux_amd64/frps.ini>/usr/local/frp/frp_log 2>&1...
2019-01-27 10:31:28
2693
原创 Java 学习基础
一、注解 Annotation1.@override : 准确覆写2.@deprecated : 声明过期操作,实现方法的新旧更替。3.@suppressWarnings : 压制警告二、反射机制1.“反”是指通过对象可以找到对象的出处(即是那个类的对象)2.Class类对象实例化java.lang.class 是一个类,这个类是反射操作的源头。即所有的反射都要从此类开...
2018-08-15 16:12:43
180
处理时间线问题,将拿出时间与放回时间最匹配
2022-01-29
夹子拿出与放入都会记录一条数据,现在将数据进行合并
2022-01-27
TA创建的收藏夹 TA关注的收藏夹
TA关注的人