mysql
代码量
学的越多,不会的越多
展开
-
mysql左右匹配原则的用法和理解
重点:mysql的最左匹配原则其实是和where后面的查询条件顺序是没有关系的只和索引的字段顺序有关;(这里说的顺序是联合索引的顺序)这点网上很多地方都说错了下面我们来用代码模拟一下问题这里我们创建一个test01表 表中有 abc 三列的复合索引CREATE TABLE `test01` ( `id` bigint(25) NOT NULL, `a` bigint(255) DEFAULT NULL, `b` bigint(255) DEFAULT NULL, `c` bigint原创 2022-03-25 11:53:13 · 7958 阅读 · 0 评论 -
mysql sql 优化技巧一 —— explain + sql语句 explain 用法
sql优化的本质 就是优化索引,看一下索引在查询的时候是否有用到,索引建的是否合理索引可以简单理解为: **排好序的快速查找数据结构**;索引的本质:**数据结构**使用 explain 语法来进行sql分析 优化使用方法:explain + sql语法如:EXPLAIN SELECT id FROM sys_changebill ;解析结果 id select_type table type possible_keys key key_len原创 2021-03-17 15:50:14 · 302 阅读 · 0 评论 -
on duplicate key update 重复插入时更新 使用
基本语法: INSERT INTO TABLE (a,c) VALUES (1,3) ON DUPLICATE KEY UPDATE c=c+1; (这里a为主键) 这条sql相等于两条sql: 1.INSERT INTO TABLE (a,c) VALUES (1,3) 2.UPDATE TABLE SET c=c+1 WHERE a=1; 如何a=1在表中存在则执行第2条语句,相等于对原创 2017-04-12 11:08:53 · 2898 阅读 · 0 评论 -
MySQL 的 RowNum 实现
MySQL 下面没有RowNum,排序后序号却无法得到,比较麻烦!在网上找了再三,通过比较,确认了以下的方法是可行的 :SELECT @rownum:=@rownum+1 rownum, CollectSn From(SELECT @rownum:=0,bbgmain.* FROM qbdb.bbgmain WHERE collectsn!='' ORDER BY collectsn limit原创 2017-04-19 16:20:57 · 403 阅读 · 0 评论 -
mysql 列值为null 有关的问题
因为历史原因现在需要做个软删除,不要问之前为什么没有做,我也是接锅的 直接写语句:SELECT * FROM sal_ficontractdevice a WHERE a.deletestate <> '1' 竟然deletestate 是null 没有被查出来,只查出来deletestate 是0 的 总结:在判断不等于某个值的时候,不要想当然的以为为null...原创 2018-08-24 16:27:34 · 829 阅读 · 0 评论 -
mybatis 错误提示 invalid comparison: java.util.Date and java.lang.String
引起这个错误原因是把Date类型和string类型进行比较,就会出现这个错误;这里的createTime是date类型的 在进行if判断的时候和’’ 空字符串进行比较,这里就会报这个错误修改:只需要把createTime != ’ ’ 移除就可以了...原创 2018-12-06 12:27:47 · 404 阅读 · 0 评论 -
mybatis 使用xml中if判断时出现的问题
在用mybatis 时 用if判断总是遇到各种的坑,时间长了就忘了,在这里记录一下if在判断 用数值类型和空字符串进行比较 如 integer != “”;这里就会出现 当integer =0 的时候,这个判断就不是成立的,导致字段等于0的时候无法插入如图:这里的amountPayment是数值类型的,当为0是 这个条件是满足的,就会导致不执行,解决方法就是把为空字符串断去除就行了总结:...原创 2018-12-06 12:38:57 · 3694 阅读 · 0 评论