mysql
xinqing5130
发现问题,记录一下
展开
-
mysql和pgsql非id自增表分组后取每组时间最新一条记录
SQL分组取最新一条数据原创 2022-01-12 11:12:34 · 762 阅读 · 0 评论 -
SQL语句exists和in的区别
mysql中使用in有可能导致sql长度超过限制,导致执行失败,这时候我们可以使用exits来简化sql例如:update eas_student t1 set register_status = 2 where t1.del_flag = 0 and t1.id in ( select distinct t2.student_id from eas_student_plan t2 where t2.del_flag = 0);如果子查询中的数量特别多,就会导致整个sql长度过长。原创 2021-08-24 11:02:28 · 609 阅读 · 0 评论 -
mysql中count和sum结合if判断
比如有一张学生表,一张订单表问题一:统计所有的学生数和所有的男学生数select count(id) as 'total', count(if(gender = 0, 1, null)) as 'male' from student;问题二:统计订单表的订单金额,以及商品订单的订单金额select sum(order_amount) as 'total', sum(if(order_type = '01', order_amount, null)) as 'goodsOrder' fro原创 2021-05-18 16:34:10 · 263 阅读 · 0 评论 -
mysql left join中where条件和on条件的区别
假设现在有表t1, t2, t3,t1通过id左关联t2, t2通过id左关联t3, 要统计t3中关联t1(8, 9, 10, 11, 722, 723, 724)数量?有两种写法:SQL1:select t1.id, count(t3.id) as totalQuestionCntfrom eas_label t1 left join eas_question_label t2 on t1.id = t2.label_id and t2.del_flag = 0 lef..原创 2021-03-26 13:56:09 · 94 阅读 · 1 评论 -
excel指定列拼接sql
有的时候我们需要将excel中的数据导入到数据中,有多种方式,这里介绍的是通过excel函数拼接sql,然后导入到数据库。首先整理excel,包括列和值,列数无限制然后选一个新的列头,这时候fx是为空的我们只要在这里写函数,就可以拼接了比如我这里选中了Q列,然后在fx输入框里写="insert into xxxxx(name, code, attr_name, type, value,market_required_flag, market_view_flag, market_原创 2021-03-17 20:47:46 · 417 阅读 · 0 评论 -
基于mybatis-plus实现自动参数赋值
比如说创建人、创建时间、更新人、更新时间等字段mybatis有一个默认的参数处理器DefaultParameterHandler它有一个默认子类MybatisDefaultParameterHandler结构是这样的注意这里有个insertFill和updateFill,其实就是我们需要的东西。利用他们可以在新增和更新的时候自动注入创建人创建时间更新人更新时间等字段。实现方式也简单1、定义一个类实现MetaObjectHander接口,重写insertFill和upd原创 2020-09-24 16:26:08 · 2279 阅读 · 0 评论 -
mysql 执行计划
explain + sqlType类型及区别type 说明 ALL 全数据表扫描 index 全索引表扫描 RANGE 对索引列进行范围查找 INDEX_MERGE 合并索引,使用多个单列索引搜索 REF 根据索引查找一个或多个值 EQ_REF 搜索时使用primary key 或 unique类型 CONST ...原创 2019-08-12 14:21:20 · 78 阅读 · 0 评论 -
MySQL主从复制读写分离
目前存在的问题: 在实际的生产环境中,由于单台Mysql作为独立的数据库无论是高并发或者在安全性等方面出现各种问题。因此,我们可以通过主从复制(Master-Slave)、读写分离(MySQL-Proxy)的方式来提升系统数据库的并发负载能力。简而言之,以前是一个人干活,现在是多个人干活。 ————————————————————————————————————————————— 概念解析: ——原创 2018-01-19 15:13:25 · 222 阅读 · 0 评论 -
数据性能优化的逻辑顺序
原链:https://www.zhihu.com/question/19719997来源:知乎很多人第一反应是各种切分。我给的顺序是:第一优化你的sql和索引;第二加缓存,memcached,redis;第三以上都做了后,还是慢,就做主从复制或主主复制,读写分离,可以在应用层做,效率高,也可以用三方工具,第三方工具推荐360的atlas,其它的要么效率不高,要么没人维护;第四如果以上都做了还是慢,原创 2017-09-01 23:17:09 · 312 阅读 · 0 评论 -
mysql generator使用方法
Maven项目:一,在pom.xml添加plugin,并指定generatorConfig.xml位置 org.mybatis.generator mybatis-generator-maven-plugin 1.3.2原创 2017-10-31 15:50:38 · 4454 阅读 · 1 评论 -
ubuntu安装mysql
安装mysql1. sudo apt-get install mysql-server2. apt-get isntall mysql-client3. sudo apt-get install libmysqlclient-dev查看是否安装成功sudo netstat -tap | grep mysql服务登录退出mysql -u root -pquit原创 2017-09-01 23:19:41 · 176 阅读 · 0 评论