oracle+表无法查询,Oracle SQL Developer - 无法同时查询2个表

我最近必须将数据库从SQL Studio移到Oracle,并且我正在学习必须使用的所有不同语法。Oracle SQL Developer - 无法同时查询2个表

无论如何,今天我遇到了一个问题,我试图执行的查询永远运行(> 15分钟),似乎永远不会结束。

正如你所看到的,我使用With语句来创建2个temp。我从中运行查询的表。如果我单独查询这些表中的任何一个,我会在< 2秒内得到结果。只要我在From语句中添加另一个表,它似乎没有做任何事情。

此查询工作正常:

With Laser as

(

SELECT Data.Serial_Number, Equipment.Equipment_Desc, Data.SCAN_TIME,

ROW_NUMBER() OVER (PARTITION BY Data.Serial_Number, Equipment.Equipment_SN

ORDER BY Equipment.Equipment_SN) AS RN

FROM Data, Equipment

where Data.Equipment_Station = Equipment.Equipment_SN and Equipment.Equipment_Desc like '%laser Etch%'

)

,AssyQC AS

(

SELECT Data.Serial_Number, Equipment.Equipment_Desc,Data.SCAN_TIME,

ROW_NUMBER() OVER (PARTITION BY Data.Serial_Number, Equipment.Equipment_SN

ORDER BY Equipment.Equipment_SN) AS RN

FROM Data, Equipment

where Data.Equipment_Station = Equipment.Equipment_SN and Equipment.Equipment_Desc like '%QSMC SI%'

)

select to_char(Laser.SCAN_TIME, 'mm') as "Laser Month", to_char(Laser.SCAN_TIME, 'dd') as "Laser Day"

from Laser

;

现在,如果我在其他表添加到从声明,即使我不使用它,其他任何地方(选择,在那里,等)查询没有按什么都不做。它运行并运行并运行...

With Laser as

(

SELECT Data.Serial_Number, Equipment.Equipment_Desc, Data.SCAN_TIME,

ROW_NUMBER() OVER (PARTITION BY Data.Serial_Number, Equipment.Equipment_SN

ORDER BY Equipment.Equipment_SN) AS RN

FROM Data, Equipment

where Data.Equipment_Station = Equipment.Equipment_SN and Equipment.Equipment_Desc like '%laser Etch%'

)

,AssyQC AS

(

SELECT Data.Serial_Number, Equipment.Equipment_Desc,Data.SCAN_TIME,

ROW_NUMBER() OVER (PARTITION BY Data.Serial_Number, Equipment.Equipment_SN

ORDER BY Equipment.Equipment_SN) AS RN

FROM Data, Equipment

where Data.Equipment_Station = Equipment.Equipment_SN and Equipment.Equipment_Desc like '%QSMC SI%'

)

select to_char(Laser.SCAN_TIME, 'mm') as "Laser Month", to_char(Laser.SCAN_TIME, 'dd') as "Laser Day"

from Laser, AssyQC

;

此查询在SQL Studio中正常工作。

任何想法??

2011-07-27

AFJ

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值