数据库
文章平均质量分 52
数据库
浅浅是个小仙女
这个作者很懒,什么都没留下…
展开
-
【数据库多条数据取最新一条的sql: ROW_NUMBER() OVER (PARTITION BY COL1 ORDER BY COL2)】
ROW_NUMBER() OVER (PARTITION BY COL1 ORDER BY COL2)原创 2022-04-20 14:59:03 · 2350 阅读 · 0 评论 -
MYSQL连接navicat报Authentication plugin ‘caching_hsa2_password‘ cannot be loaded错误
MYSQL连接navicat报Authentication plugin ‘caching_hsa2_password’ cannot be loaded错误最近新安装了mysql,在连接时遇到各种问题在此记录一下首先说明一下navicat版本为Navicat Premium 12;mysql使用的版本为MySQL Server 8.0查阅了一下,原来mysql8.0之前的版本加密方式是mysql_native_password,而8.0之后的加密方式改为caching_sha2_password解原创 2020-12-16 16:47:07 · 521 阅读 · 0 评论 -
sql查询数据库表中重复数值
查询数据库中重复数值-- 查询表中id重复的值select id from 表名 group by id having count(*) > 1--查询表中的重复记录,重复记录是根据id重复做判定select * from 表名 where id in(select id from 表名 group by id having count(*) > 1)-- 删除表中多余的重复记录,重复记录根据id重复做判定,只留rowid最小的那条记录delete from 表名 where (原创 2020-11-30 11:48:18 · 3269 阅读 · 0 评论 -
Oracel数据库日期格式转换
Oracel数据库日期格式转换13位时间戳转时间select to_char(字段名 /(1000 * 60 * 60 * 24) + to_date( '1970-01-01 08:00:00', 'YYYY-MM-DD HH24:MI:SS' ),'YYYY-MM-DD') 字段名 from 表名运行结果:oracle生成当前时间戳select (sysdate-to_date('1970-01-01 08:00:00','yyyy-mm-dd hh24:mi:ss'))*1000*原创 2020-11-30 11:32:24 · 259 阅读 · 0 评论 -
Oracle数据库 REGEXP_SUBSTR 函数
Oracle数据库 REGEXP_SUBSTR 函数需求场景:要求在指定时间段内根据部门名称字段(数据库中为多个,拼接字段) 进行分组计算sum(score)如图实现:先切割字段再分组计算,使用到REGEXP_SUBSTR /** *- 字段说明 *分割字符串中所有的逗号,然后成多行 *参数说明, *参数1(DEPT_NAMES): 待分割字符串 * *参数2('[^,]+'):正则表达式(以‘,’标识号切割) * *参数3:起始位置,从第几个字符开始正则表达式匹配原创 2020-11-30 11:10:55 · 2596 阅读 · 0 评论 -
Oracle数据库 FIND_IN_SET函数
Oracle FIND_IN_SET函数数据库中有下方表格所示类型的一个列,每个值都是由ID拼接的字符串,用户希望能针对这个列做到数据检索,要求数据值只要包含传入值,即视为满足检索条件。直接写sqlselect t.* from TABLE_T t where instr(t.ids, '8') > 0结果如下上述的查询结果其实是不满足条件的,因为我传入一个’8’,按照正常情况应该只查询出第4条数据才对,但是因为’6,88’也包含了’8’,所以也查出来了。万能百度登场!方法二是较原创 2020-10-09 14:31:06 · 1194 阅读 · 0 评论