
SQL数据库
文章平均质量分 58
SQL数据库
Whitemeen太白
这个作者很懒,什么都没留下…
展开
-
mybatis 连表查询,子查询 collection,返回 vo
AppsGroupMapper.java 子查询。AppsGroupMapper.xml 子查询。AppsService.xml 主查询。原创 2022-08-08 15:32:34 · 2133 阅读 · 0 评论 -
date、time、datetime、timestamp区别
一个完整的日期格式如下:YYYY-MM-DD HH:MM:SS[.fraction]比如:’1970-01-01 00:00:01.000000’ ~ ‘2038-01-19 03:14:07.999999’。timestamp占4字节,datetime占8字节;包含时区信息,如果日后修改了时区的话,timestamp所表示的时间会随时区而变化,而datetime不会。timestamp 更适合来记录时间,比如我在东八区时间现在是 2016-08-02 10:35:52, 你在日本(东九区此时时间为 20原创 2022-07-08 17:47:50 · 2025 阅读 · 0 评论 -
MySQL字段类型与Java实体类类型对应转换关系
MySQL Connector/J( MySQL官方JDBC驱动程序)在处理MySQL数据类型和Java数据类型之间的转换方面非常灵活。通常,任何MySQL数据类型都可以转换为java.lang.String。可以将字符串和任何数字类型转换为任何Java数字类型,尽管可能会发生舍入、溢出或精度损失。从Connector/J 3.1.0开始,JDBC驱动程序会发出警告或引发JDBC规范所要求的DataTruncation异常(数据截断异常),除非通过使用jdbcCompliantTruncation属性并将其原创 2022-07-06 11:30:22 · 4129 阅读 · 0 评论 -
sql 全解(索引、索引失效、sql优化)
1. 小表驱动大表2. 建索引,一张表不超过5个索引3. 走索引,尽量满足最左匹配,避免索引失效原创 2022-07-04 07:53:35 · 908 阅读 · 0 评论 -
SQL实现模糊查询的几种方法总结
模糊查询是针对字符串操作的,类似正则表达式,没有正则表达式强大。一、一般模糊查询1. 单条件查询//查询所有姓名包含“张”的记录select * from student where name like '张'2. 多条件查询//查询所有姓名包含“张”,地址包含四川的记录select * from student where name like '张' and address like '四川'//查询所有姓名包含“张”,或者地址包含四川的记录select * from student原创 2021-03-15 20:16:31 · 41076 阅读 · 0 评论 -
mysql 的一些重要知识
聚簇索引、主键索引:聚簇索引、辅助索引、二级索引:超过 long_query_time 阈值(默认10s),就被认为是慢查询。手动开启慢查询日志,慢查询会被记录在慢查询日志里。InnoDB行锁是通过给索引上的索引项加锁实现的,因此只有走索引查询数据,(索引未失效)innoDB才会使用行锁,否则InnoDB将使用表锁。由于MySQL的⾏锁是针对索引加的锁,不是针对记录加的锁,所以虽然是访问不同⾏的记录,但是如果是使⽤相同的索引键,是会出现锁冲突的。...原创 2022-07-04 08:11:03 · 125 阅读 · 0 评论 -
MyBatis 实现模糊查询的三种SQL拼接方式
1. sql中字符串拼接 SELECT * FROM student WHERE name LIKE CONCAT(CONCAT('%', #{text}), '%');避免使用"${}"拼接,避免SQL注入。2. 使用 ${} 拼接 SELECT * FROM student WHERE name LIKE '%${text}%'; ${}解析过来的参数值不带单引号,#{}解析传过来参数带单引号。在Web项目中,如果没有防范SQL注入的机制,要谨慎使用“${}”符号拼接SQL语原创 2021-03-15 16:41:41 · 4507 阅读 · 0 评论