我正在使用Oracle DB并尝试使用spring jdbc temple发出合并查询。
示例oracle查询如下
MERGE INTO table_name b
USING (select 'id','fid','somedata' from DUAL a
ON (a.id = b.id and a.fid = b.id)
WHEN MATCHED THEN
UPDATE SET col_name = 'some_val' where lastUpdateTime > someTime
WHEN NOT MATCHED THEN
INSERT (id,fid col_name)
VALUES ('id','fid', 'some_val')
此查询之前正在运行,但现在运行速度非常慢(在几分钟内)
表格详情:
id,fid作为复合主键
在记录creationDate上分区。
表中的记录数量约为1500万左右
为什么查询执行速度如此之慢?
答案 0 :(得分:1)
当它运行几分钟后,您应该使用
找到解释select * from v$session_longops where time_remaining > 0