1. mapper
不能用 < 会识别为尖括号
2. Oracle的number在Java中的转换
用bigdecimal接收
3. 数据库ResultType
返回的是基本类型,不是List,会自动进行一条或者多条的转换;
4. oracle判断字段内容是否为空
is null is not null;
5. oracle字段如果是null就赋值别的值
NVL();COALESCE()
6. 用一张表更新另一张表
7. # ORACLE分组排序后获取第一条和最后一条值
select id,wm_concat(name) as qsgt from (
select id,name from (-- 分组排序取出第一条和最后一条
select
t1.id,
t1.name,
row_number() over(PARTITION BY t1.id order by t1.name) rowss1,--第一条
row_number() over(PARTITION BY t1.id order by t1.name desc) rowss2--倒数第一条
from t_test t1
where t1.pid= '0'
)
where rowss1='1' or rowss2='1'
) GROUP BY id
http://t.zoukankan.com/likui-bookHouse-p-11534130.html
8. MySQL中 INSERT + SELECT 的使用
https://blog.csdn.net/weixin_45740811/article/details/122215503
insert into select from 用一张表的数据去导入另一张表
如果是select into 那目标表可以不存在
insert into的时候 如果select某列数据为空 那么不会更新目标表原有的数据
9. Mybatis - 无效的列类型: 1111
列名和xml里面的名称没有对应上
10. SQL ambiguous
select出来重复列名,多个null也算
11. oracle没有limit 用rownum
12. substr在数据库里面截取字段
13. regexp_like 像正则一样判断字段
14. wm_concat
15. replace
16. <> 不等于
17. instr(str, searchStr, -1)实现
instr(str, searchStr, -1)实现lastIndexOf,第三个参数为1实现indexOf
18. 按字段分组查询符合条件记录的方法
https://blog.csdn.net/sweeper_freedoman/article/details/52753163
19. 无法转换为内部表示 。Error attempting to get column ‘XXX‘ from result set.
有一次,数据库里面是11.11,但是Java写的是integer,所以报这个错误
数据库字段类型与项目实体类中定义的类型不同
20. SQL查询是否有某条数据
不用count,用select 1 from table limit 1
21. 日志表的设计
建查询索引;主键用bigint自增
http://mysql.taobao.org/monthly/2017/09/08/
22. every derived table must have its own alias
每个组装的表都要有自己的别名 select t.* from (select) t
23. limit和offset
24. 窗口函数排序
rank是关键字
25. datetime 和 timestamp
timestamp带时区信息,可以处理成当地时区的时间
datetime是存什么返回什么,不能做转换
26 resultMap
用来自定义映射实体类和数据库查询结果
27 resultType
使用基础数据类型和实体类完全一致的情况下的实体类;使用Map是不知道会查询多少字段出来的情况,不过注意只能查出单条数据