Mysql 是否从2个或不同表的列名向表中插入值?
请帮助我解决这个问题Mysql 是否从2个或不同表的列名向表中插入值?,mysql,oracle,oracle11g,sqlplus,Mysql,Oracle,Oracle11g,Sqlplus,请帮助我解决这个问题 表t1有“t1c1”和“t1c2”列 表t2有“t2c2”和“t2c2”列 我必须在t3表中插入“t3c1”、“t3c2”和“t3c3”列的值 条件是“t3c2”列值应从“t1c2”列填充,“t3c3”列值应从“t2c2”列填充,“t3c1”列值应从光标值填充 有人能帮忙吗?这可能吗?这应该可以: 插入t3(t3c1、t3c2、t3c3) 选择currval、t1.t1c2、t2.t2c2 从t1,t2; 如果只需要匹配t1和t2中的某些行,可以添加: WHERE t1.
插入t3(t3c1、t3c2、t3c3)
选择currval、t1.t1c2、t2.t2c2
从t1,t2;
如果只需要匹配t1
和t2
中的某些行,可以添加:
WHERE t1.t1c1 = 'value'
AND t2.t2c1 = 'value';
我现在不知道我是否理解你的问题。 也许SQL中的一些代码比其他描述更好。如果我不理解你有这个观点
CREATE VIEW t3 as选择t1c2作为t3c2,t2c2作为t3c3,rowid(oid…或其他)作为t1中的t3c1,其中。。。。
然后您可以制作触发器,而不是
创建触发器t3\u insert,而不是t3上的insert作为BEGIN
插入t1…值(NEW.t3c1…)
.......
结束;
或者,如果t3是常规表,并且您希望修改t3中的数据,则在插入(更新、删除)后使用触发器
更具体地说,您将收到更好的解决方案。嗨,本杰明……除了t3c1列应该是光标值之外,其他都是正确的……如何使用光标插入该列value@kattashri对不起,我不能胜任Oracle,我不能帮你更多!ya t3是一个常规表,我不想修改t3表,但我试图填充t3表,其中的列是另一个表中的值,其中的一列是游标值
insert into t3(t3c1,t3c2,t3c3)
(select curval,t1.t1c2,t2.t2c2 from t1 left outer join t2 on t1.col=t2.col)