主页

MySQL匹配,LIKE or REGEXP?

😀 在MySQL中,我们可以使用LIKE和REGEXP函数来进行模式匹配操作。LIKE函数使用通配符进行模式匹配,而REGEXP函数使用正则表达式进行模式匹配。这两个函数都是常用的工具,但它们在匹配方式、匹配规则和性能方面存在一些区别。 一、引言 模式匹配是一种在数据库中根据特定模式进行数据筛选和查找的技术。它允许我们根据我们所需的数据模式来提取相关的数据,从而满足我们的查询需求。模式匹配在数据分析、报表生成和数据挖掘等领域中起着至关重要的作用。 在MySQL中,我们可以使用LIKE和REGEXP函数来进行模式匹配操作。LIKE函数使用通配符进行模式匹配,而REGEXP函数使用正则表达式进行模式匹配。这两个函数都是常用的工具,但它们在匹配方式、匹配规则和性能方面存在一些区别。 二、L...

阅读更多

MyCat 配置服务启动

启动 用管理员身份打开命令行,进入mycat的bin目录。 输入mycat.bat install将mycat服务安装至系统。 mycat.bat install 输入mycat.bat start启动服务 mycat.bat start 如mycat.bat restart重启服务 mycat.bat restart 输入mycat.bat stop 停止服务 mycat.bat stop 输入mycat.bat status 查看当前服务状态 mycat.bat status 输入mycat.bat remove 卸载服务 mycat.bat remove

阅读更多

MyBatis中if test传入0值时不识别

前言 本文会写一些探究以及解决问题的过程。如果只想看解决方案请使用导航栏跳转到相应位置。 问题描述&分析 使用了MyBatis做多条件查询,其中有一个参数是astatus,当前端给的值为1时,查询结果正常。而给0时,这个查询语句就不会被拼接使用,具体请接着看。 OperatingAccountDao.xml <?xml version="1.0" encoding="UTF-8" ?> <!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0 /EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd"> <mapper namespace="com...

阅读更多

kettle 写入效率提升优化!

数据处理逻辑 ktt从多表获取数据进行过滤分析,然后汇总处理,同步写入mycat分片表和对应的mysq数据库。 MYSQ配置以及调优,如果没有,建议参考此文档调整,数据库调优文档 初始写入效率 可以看到,数据处理效率很快,瓶颈在写入效率很低 优化写入 增加数据库链接参数 useServerPrepStmts=false rewriteBatchedStatements=true useCompression=true 调整kettle 表出入为仅插入,减少查询 旧节点: 新节点: 开启批量插入,批次为1000,可以根据自行调节找到合适的数值 优化ktr 执行之前截断写入的物理表和分片表 优化结果 写...

阅读更多

905-按奇偶排序数组

题目描述 给定一个整数数组 nums,将数组中的所有偶数元素移动到数组的前面,后跟所有奇数元素。 解决思路 使用双指针技巧,一个指针从数组开头向后移动,另一个指针从数组末尾向前移动。当左指针指向奇数、右指针指向偶数时,交换两个元素的位置,直到两个指针相遇为止。 算法代码 func sortArrayByParity(nums []int) []int { left, right := 0, len(nums)-1 for left < right { if nums[left]%2 != 0 && nums[right]%2 == 0 { nums[left], nums[right] = nums[...

阅读更多

mysql lost connection to server during query

复现 Navicat Premium 16进行数据导出的时候,导出一半频繁报错 ” mysql lost connection to server during query“。单表数据在100w左右,连续关联了6张表,虽然需求很不合理,但能导出来就好。 单表字段也很多,平均30个左右。根据错误提示,mysql查询过程中丢失链接导致错误。 方法一 修改max_allowed_packet 经实践,修改该参数为512M之后,重启之后还是不能解决此问题。 方法二 调整net超时参数 innodb_read_io_threads = 16 innodb_write_io_threads = 16 net_read_timeout = 28800 net_write_timeout =...

阅读更多

1013-将数组分成和相等的三个部分

题目概述 给定一个整数数组 arr,判断是否可以将其划分为三个和相等的非空部分。 示例 示例 1: 输入:arr = [0,2,1,-6,6,-7,9,1,2,0,1] 输出:true 解释:0 + 2 + 1 = -6 + 6 - 7 + 9 + 1 = 2 + 0 + 1 示例 2: 输入:arr = [0,2,1,-6,6,7,9,-1,2,0,1] 输出:false 解题思路 要将数组划分为三个和相等的非空部分,首先需要计算数组的总和。如果总和不能被3整除,那么无法分成三等分,直接返回 false。然后,使用双指针技巧,找到数组的两个分界点,使得每个分区的和都等于总和的1/3。 算法步骤 它接受一个整数数组 arr 作为输入,并返回一个布尔值,表示该数...

阅读更多