DB2按tbl2中的ID在tbl1中插入行

j2cgzkjk  于 2022-11-07  发布在  DB2
关注(0)|答案(3)|浏览(226)

我对sql,尤其是DB2非常陌生。
我需要做的是从tbl2中获取所有ID,并使用tbl2中的每个ID在tbl1中插入新行
我想到了这样一件事:

SELECT id FROM tbl2  (INSERT INTO tbl1 (TID, NAME, ADDRESS) VALUES ( id, 'junk', 'junk'));

有人能帮帮我吗?

zvms9eto

zvms9eto1#

我不了解DB2,但您正在沿着正确的道路前进。通常,我会将其配置为如下所示:

INSERT INTO tbl1 (TID, NAME, ADDRESS) SELECT id, 'junk', 'junk' FROM tbl2;

据我所知,该语句是SQL标准,所以它应该工作在任何地方,使用SQL标准,即Oracle,SQL服务器,MySQL等。

yr9zkbsy

yr9zkbsy2#

正确的语法为:

INSERT INTO tbl1(TID, NAME, ADDRESS) 
    SELECT id, 'junk', 'junk'
    FROM tbl2 ;
js81xvg6

js81xvg63#

我有两个表1:表TBL新更新2:表AspNetUsers
我需要为具有某些条件的所有用户插入新通知。
TBLNewUpdate和AspNetUsers之间的关系是AspNetUsers.Id = TBLNewUpdate.MuserID

INSERT INTO TBLNewUpdate(MDate,MAdress, MText,MUserID,MRead)
    SELECT GETDATE(),
    N'Address',
    N'New Text',
    TBUser.Id,
    0
    FROM AspNetUsers TBUser
    WHERE TBUser.EmailConfirmed = 1

相关问题