Sign-up....

超怪的问题!同一句SQL,同样的条件,每次执行的结果都不一样。请高手出马,结帖给分!急!!!!

1、ORACLE数据库是9i,测试的时候没有其他人使用

2、进入SQLPLUS后,第一次运行的值是19000多,第二次运行的值是8000多,第三次的值才正确,是1800多,接着再执行,结果就保持在1800多不变了,够奇怪的。基本上每次重新进入SQLPLUS执行都会遇到相同的情况。

3、SQL如下,用来获取某段时间内某人的加工总金额:

select nvl(sum(nvl(xfI.qty_finish,0)*nvl(xjs.job_pay,0)),0)

from XXWIPT_FLOWCARD_ITEM xfi,----工人加工信息

XXWIPT_PRODUCT_WORK xpw,----产品工序关系

XXPAYT_JOB_STANDARD xjs,----单件工价

HR_EMPLOYEE_BASE heb---人员信息

where xfi.working_id = xpw.working_id----工序ID

and xfi.item_id = xpw.item_id----产品ID

and xfi.employee_code = heb.employee_code----人员工号

and heb.employee_id = 259

and xpw.product_work_id = xjs.product_work_id---工价ID

and trunc(xfi.finish_date) >= to_date('041021','yymmdd')---完工开始日期

and trunc(xfi.finish_date) <= to_date('041120','yymmdd')---完工结束日期

4、请高手不啬指教!

[770 byte] By [msdn] at [2007-8-14 15:33:11]
# 1 Re: 超怪的问题!同一句SQL,同样的条件,每次执行的结果都不一样。请高手出马,结帖给分!急!!!!

trunc(xfi.finish_date) 有问题吧

----------------------

如果你的finish_date存在时:分:秒,那最好使用to_date(xfi.finish_date) >= to_date('041021','yymmdd');

sanoul at 2004-11-24 12:06:45 >
# 2 Re: 超怪的问题!同一句SQL,同样的条件,每次执行的结果都不一样。请高手出马,结帖给分!急!!!!

select round(finish_date),

trunc(finish_date),

to_date(finish_date),

finish_date

from XXWIPT_FLOWCARD_ITEM;

sanoul at 2004-11-24 12:07:51 >
# 3 Re: 超怪的问题!同一句SQL,同样的条件,每次执行的结果都不一样。请高手出马,结帖给分!急!!!!

我这样试了下,甚至将日期条件都给去掉了,一旦数据库重新启动后,第一次查询还是有问题,取得的值和再次查询的值不一致。会不会是ORACLE的什么BUG啊?

superworld at 2004-11-24 13:31:25 >
# 4 Re: 超怪的问题!同一句SQL,同样的条件,每次执行的结果都不一样。请高手出马,结帖给分!急!!!!

应该不会呀,我好象从来没有碰到过这种情况

sanoul at 2004-11-24 13:33:02 >
# 5 Re: 超怪的问题!同一句SQL,同样的条件,每次执行的结果都不一样。请高手出马,结帖给分!急!!!!

先用 select count(*) from ....

看看记录数变不变

yaozw_mountain at 2004-11-24 13:36:49 >
# 6 Re: 超怪的问题!同一句SQL,同样的条件,每次执行的结果都不一样。请高手出马,结帖给分!急!!!!

应该是SQL有问题, 所以先不要连着么多表.

逐渐将表加上.

看看为题出在那个环节.

GerryYang at 2004-11-24 13:50:35 >
# 7 Re: 超怪的问题!同一句SQL,同样的条件,每次执行的结果都不一样。请高手出马,结帖给分!急!!!!

昨天客户告诉我数据不准,我查问题时发现的。不光是客户那里,我们公司内部的数据库也有这个问题。以前从没出过这种事情。

刚才我又试了一下,每次重启动数据库后用那句SQL查询的记录数count(*)没有变化,但就是返回的值在第一次的时候不正确,而且不正确的值就那几个,也不是随机变化的。

superworld at 2004-11-24 14:10:15 >
# 8 Re: 超怪的问题!同一句SQL,同样的条件,每次执行的结果都不一样。请高手出马,结帖给分!急!!!!

虽然问题没找到,还是非常感谢大家的支持,所以散分给大家,嘿嘿!

superworld at 2004-11-25 13:34:01 >

Oracle

All Classified