往pk中插入数据问题

[复制链接]
查看11 | 回复7 | 2014-10-27 12:36:19 | 显示全部楼层 |阅读模式
问题如下:
假设有表t,其中有字段a,b,c,d。a字段为pk。

那么语句:insertintot(a,b,c,d)select?,字段2,字段3,字段3 from x fullouterjoin yon 条件



fullouterjoin zon 条件

... ... ... ... ... ...

group by ... ...
往t表中插入的数据是通过x,y,z(或更多)表通过一些条件关联,分组,排序后的的结果。我想问的是在“问号”那个地方,如何才能产生
一个唯一的值往主键a中插入?
回复

使用道具 举报

千问 | 2014-10-27 12:36:19 | 显示全部楼层
sequence
回复

使用道具 举报

千问 | 2014-10-27 12:36:19 | 显示全部楼层
我知道用sequence,我只是想知道还有没有别的方法。
谢谢您的答复!
回复

使用道具 举报

千问 | 2014-10-27 12:36:19 | 显示全部楼层
systimestamp
回复

使用道具 举报

千问 | 2014-10-27 12:36:19 | 显示全部楼层
原帖由 serapy 于 2008-10-27 16:16 发表
systimestamp

window systimestamp 最新是0.01秒,也就是说每秒不能超过100条记录哟,否则会有冲突的
回复

使用道具 举报

千问 | 2014-10-27 12:36:19 | 显示全部楼层
倒也想过用时间戳,但怕有问题。
回复

使用道具 举报

千问 | 2014-10-27 12:36:19 | 显示全部楼层
我尝试过用rowid和rownum,有问题。
因为后面的select 语句涉及的表多,而且语句有点复杂。
如同下面的这样:
select * from ((select* from ... group by) a full outer join (select * from ... group by) b on ...

full outer join (select * from ... group by) c on ...

)tgroup by ...
回复

使用道具 举报

千问 | 2014-10-27 12:36:19 | 显示全部楼层
原帖由 lslovechina 于 2008-10-27 16:50 发表
我尝试过用rowid和rownum,有问题。
因为后面的select 语句涉及的表多,而且语句有点复杂。
如同下面的这样:
select * from ((select* from ... group by) a full outer join (select * from ... group by) b on ...

full outer join (select * from ... group by) c on ...

)tgroup by ...

那就再加一层语句阿
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

主题

0

回帖

4882万

积分

论坛元老

Rank: 8Rank: 8

积分
48824836
热门排行