我有两张桌子,第一张A,充满了信息。第二个B,是空的。我想从表A中取一行并将其放入表B.到目前为止,我必须在表B中开始一行(填写两列),然后更新。有没有办法只使用我想要的行的其他表信息创建一个新行,相同的模式。我在看LEFT JOIN,但是不能分解如何按行添加它。以下是我到目前为止:
UPDATE tableB
SET tableB.aaa = (SELECT aaa FROM tableA where id = '1'),
tableB.bbb = (SELECT bbb FROM tableA where id = '1'),
tableB.ccc = (SELECT ccc FROM tableA where id = '1'),
tableB.ddd = (SELECT ddd FROM tableA where id = '1'),
tableB.eee = (SELECT eee FROM tableA where id = '1'),
where proprietaryname='drugC';
另外,有没有办法不重复这个。 SQL新手,感谢您的帮助。
答案 0 :(得分:1)
如果要在tableA中的tableB中插入新行,则可以使用insert . . select
:
insert into tableB(aaa, bbb, ccc, ddd, eee)
select aaa, bbb, ccc, ddd, eee
from tableA
where proprietaryname = 'drugC';