
数据库
文章平均质量分 59
Fire_Bit
爱java爱生活
展开
-
postgresql 递归查询小记
项目上使用了postgresql,在查询一个字典表时需要递归查询,把别人的sql 拷过来, 改了改发现不对,于是研究了一下如下 有一个category 表数据如下,c是节点id, p是父节点id,最顶层父节点id是r 需求:需要根据给定的 节点id查出他的所有的上级节点 或者 子节点 1.根据给定的 节点id查出他的所有的上级节点 sql 如下: with RECURSIVE t as( select * from category where c= 'r11' uni...原创 2021-04-23 21:51:44 · 909 阅读 · 0 评论 -
mysql 实现oracle开窗函数
用oracle 用习惯了 突然使用mysql 有点不习惯 , 今天有一个需求是分组统计, 类似于 得到每个班级的前三名 这种需求 首先想到的是使用开窗函数, 但这是mysql, mysql 8.x版本才支持开窗函数, 服务器上装的是5.x 用不了啊, 于是一找了度娘, 如下sql语句和自己的理解(注释) exp: 统计一年级各班前三名 SELECT * FROM T_SCORE A where A.GRADE = 1 -- 这里的限制条件 子查询中也要带上 AND ( SE..原创 2020-11-12 22:14:52 · 2383 阅读 · 0 评论 -
oracle删除多余的重复记录
https://www.cnblogs.com/zfox2017/p/7676237.html转载 2020-05-28 00:04:46 · 165 阅读 · 0 评论 -
springboot + mybatis + druid + oracle 整合
pom.xml <?xml version="1.0" encoding="UTF-8"?> <project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://maven.apac...原创 2020-03-20 23:06:19 · 652 阅读 · 0 评论 -
关于oracle中in和exists的区别
一般来说,这两个是用来做两张(或更多)表联合查询用的,in是把外表和内表作hash 连接,而exists 是对外表作loop 循环,假设有A、B两个表,使用时是这样的: 1、select * from A where id in (select id from B)--使用in 2、select * from A where exists(select B.id from B where B....原创 2019-10-13 16:05:10 · 144 阅读 · 0 评论 -
ORACLE 关联两张表批量更新数据,实用方法
CASE: 表一 新增字段 AGE, 需要从 表二中 将AGE数据同步到表一中, 或者 单纯同步两张表中的数据 表1:EMPLOYEE(被更新的表 字段 age ) 表2: T_USER 数据来源表 方法一: 使用 exists 只更新表1中 age 为null的数据 UPDATE EMPLOYEE E SET AGE = (SELECT U....原创 2019-10-13 15:24:33 · 2473 阅读 · 0 评论 -
ORA-01795 完美解决办法
1.问题现象: 最近的项目使用oracle数据库,但是sql中 in(1,2,3,...) 当in 的参数超过1000 就会报ORA-01795: 列表中的最大表达式数为 1000 这个错误 2.解决办法: 例如:select * from employee where id in (1,2,3,...,1001) 可以修改为: select * from employee ......原创 2019-08-04 20:53:52 · 13413 阅读 · 3 评论 -
oracle over() 函数使用
1. over(partition by t.class) 这里是通过class分区,分别统计每个班的总分,并且每条数据都会呈现 SELECT t.*, sum(t.SCORE) over(partition by t.class) cnt from T_SCORE t ORDER BY t.ID 2. over(partition by t.class order by ...原创 2019-08-04 23:24:14 · 3107 阅读 · 0 评论