LEJA.SANO
犹豫、纠结、沮丧…… 皆因智慧不足。 积累,才有智慧。
posts - 5,comments - 0,trackbacks - 0

问题产生的来源:ORACLE 批量插入数据 随机取值问题

SQL_0

temp_cj:

IDD

DS

1

东风

2

大众

3

一汽

产生随机条记录的原因是:在查询时取得第一条的IDD,然后生成一个随机数,判断是否相等,如果相等存入结果集,然后去第二条记录的IDD,重新产生一随机数,然后进行判断,如此依次执行下去。(不知道本次理解是否有问题,)优化SQL,把随机数设定“固定”:
YH_SQL1
执行发现可以,但是如果查询结果仅仅是ds,还是会产生返回多个记录的结果集。
再次调整SQL:
YH_SQL2
如此一来,返回的结果集就是一条随机记录了。
但是,YH_SQL2中的条件判断的随机数是“固定”的吗?就是不论表temp_cj有多少条记录,一次查询中随机数是不变的。从测试结果上看是“固定”的。


问:YH_SQL2中的随机数为什么是"固定"的,而SQL_0的随机数不是呢?

posted @ 2010-03-23 15:13 leja 阅读(306) | 评论 (0)编辑 收藏
     摘要: ORACLE 批量插入数据 有些属性必须从一固定范围内随机取值 random(string[])  阅读全文
posted @ 2010-03-23 13:42 leja 阅读(1702) | 评论 (0)编辑 收藏