sql
kevin_loving
这个作者很懒,什么都没留下…
展开
-
sql 实战
https://www.jianshu.com/p/5a659c5b5656原创 2019-06-02 23:51:24 · 185 阅读 · 0 评论 -
数据库 索引原理 参考
本来这一块,在刚找工作的那时候 已经滚瓜烂熟了,没没想到最近的一个项目开发中遇到了性能问题, 就创建了索引 ,顺便回顾了下,相关的原理和数据结构https://www.cnblogs.com/aspwebchh/p/6652855.html...转载 2019-05-20 00:25:08 · 156 阅读 · 0 评论 -
__left join __inner join __right join
盗图一张,用于学习1. 以A表全部select <select_list> from t_A left join t_B ont_A.key =t_B.key2. A表为主,删去与B表相同部分select <select_list> from t_A left join t_B ont_A.key =t_B...转载 2019-05-19 23:34:39 · 120 阅读 · 0 评论 -
MySQL 不要使用utf-8 保存utf-8字符
最近看到大神关于Mysql utf-8 使用的一个问题:即Mysql 的utf-8 实际上不是真正意义上的 utf-8 ,我们平常认识UTF-8 是支持每个字符最多4字节MYSQL UTF-8 是每个字符最多3个字节MySQL中的utf8mb4 字符集才是支持 真实的 UTF-8...原创 2019-04-28 18:05:06 · 339 阅读 · 0 评论 -
PGSQL json 字段 插入失败----------- java + mybatis+ PgSQL
针对最近遇到的一个sql插入问题:表中有一个字段为json,jdbcType=other ,但是无论用对象还是string字符要么报字段为空,要么说输入的是字符串无法装换成json字段。参考了网上很多博客,终于找到一种方法,自己写一个继承org.apache.ibatis.type.BaseTypeHandler类型处理器类,并在mapper映射的xml文件中指定类型,具体步骤如下:...原创 2019-03-08 10:07:09 · 1579 阅读 · 0 评论 -
悲观锁 乐观锁 (转)
悲观锁(Pessimistic Lock) 悲观锁的特点是先获取锁,再进行业务操作,即“悲观”的认为获取锁是非常有可能失败的,因此要先确保获取锁成功再进行业务操作。通常所说的“一锁二查三更新”即指的是使用悲观锁。通常来讲在数据库上的悲观锁需要数据库本身提供支持,即通过常用的select … for update操作来实现悲观锁。当数据库执行select for update时会获取被...转载 2018-11-07 17:01:33 · 176 阅读 · 0 评论 -
组合主键——实体类——Oracle数据库
@Entity@Table(name = "XXXX")public class RolePrivilegeMap implements CmsMainBo { private RolePrivilegeMapId id; @EmbeddedId public RolePrivilegeMapId getId() { return id; ...原创 2018-11-07 16:24:41 · 807 阅读 · 0 评论 -
SQL ———————————————— in exits
select A.* from Person B where A.id in (select B.id from You B where B.id = A.id )select A.* from Person B where exits (select 1 from You B where B.id = A.id )1. in()适合B表比A表数据小的情况2. exi...原创 2018-11-07 16:07:33 · 147 阅读 · 0 评论 -
角色权限信息保存操作过慢
最近处理一个很久的以前的老项目的优化,其实本身的问题很简单,就是原有的设计太无语了,保存一次要10-20分钟。优化对比测试时坑死人了。问题:将插入数据库的操作写在循环里,每执行一次插入就要连接一次数据库,io耗时非常巨大;删除原有角色权限关联表和权限表的信息时,居然分为4步,4步也没问题,关键他把数据的查找操作后面的条件竟然是in(a,b,c,...,z)这种写法,速度慢了10倍,解...原创 2018-10-29 19:22:17 · 248 阅读 · 0 评论 -
前端 显示 日期信息 显示秒 156456465466 这种 使用注解 @JsonFormat
在传送点数据包装类中,加入 @JsonFormat(pattern="yyyy-MM-dd HH:mm:ss",timezone="GMT+8") private Date ctime; /** * 最近一次操作时间 */ @JsonFormat(pattern="yyyy-MM-dd HH:mm:ss",timezone="GMT+8") ...原创 2018-08-23 13:52:26 · 1180 阅读 · 0 评论 -
数据库优化(1)
1.开启连接池2.用truncate 代替 delete table3.前模糊 》》》后模糊(使用索引)where col like “%abc” 转换成 where reserve(col) like “cba%” ...原创 2018-08-23 13:42:58 · 149 阅读 · 0 评论 -
$ # mybatis
在mybatis接口mapper文件中引用传入的参数是通过#{param}或者${param}来使用的。1.数据类型匹配#:会进行预编译,而且进行类型匹配$:不进行数据类型匹配2.实现方式 #:用于变量替换$:实质上是字符串拼接3.#和$的使用场景(1)变量的传递,必须使用#,使用#{}就等于使用了PrepareStatement这种占位符的形式,提高效率。可以防止...原创 2018-07-19 16:32:21 · 125 阅读 · 0 评论 -
Left join 以左表为基础,返回左表所有 right join 以右表为基础,返回右表所有 inner join 返回两者级联字段相同部分
left join(左联接) 返回包括左表中的所有记录和右表中联结字段相等的记录 right join(右联接) 返回包括右表中的所有记录和左表中联结字段相等的记录inner join(等值连接) 只返回两个表中联结字段相等的行举例如下: --------------------------------------------表A记录如下:aID aNum1 ...转载 2018-07-19 09:54:14 · 6953 阅读 · 0 评论