icestari 发表于 2007-10-15 11:23

insert into A select first 10 * from B order by rowC 不行..

写了一个sql:insert into A select first 10 * from (select * from D where rowD< somevalue order by rowD2)
两张表的列是一样的.
他说不支持,然后改成:
select * from D where rowD< somevalue order by rowD2 INTO temp SMS_TMP
select first 10 * from SMS_TMP INTO SMS_TMP2...
结果他又说,在这句话里面first是不支持的...
那请问,怎么样才能实现我需要的功能呢?(从D表中取出符合某个条件1,然后按照条件2排序的前N条的数据,插入A表中)
THX

ivhb 发表于 2007-10-15 13:28

informix要求子句里面的结果集是一个确定的结果。first N的格式不能在子句里面出现。
参见以前的帖子,在一定条件下,可以用一个子句来代替。
所搜一下以前我在informix版的帖子,里面有。

icestari 发表于 2007-10-15 15:47

没找到...
再去找找别的高手了...
页: [1]
查看完整版本: insert into A select first 10 * from B order by rowC 不行..