Sql 使用联接条件将值插入到新表中
我不知道该怎么做 我已创建了新表名。表1 我喜欢在新表中插入特定的列。 这是我试图使用的代码,但它不起作用Sql 使用联接条件将值插入到新表中,sql,Sql,我不知道该怎么做 我已创建了新表名。表1 我喜欢在新表中插入特定的列。 这是我试图使用的代码,但它不起作用 Insert into name.table1 SELECT account.STRING0, activity.CONTACT, account.STRING2, activity.TEMPLATE, activity.NAME , activity.EXECUTION, activity.SENDDATE, Activity.OPENDATE, Activity.CLICKDATE
Insert into name.table1
SELECT
account.STRING0,
activity.CONTACT,
account.STRING2,
activity.TEMPLATE,
activity.NAME ,
activity.EXECUTION,
activity.SENDDATE,
Activity.OPENDATE,
Activity.CLICKDATE
FROM
db.1_account account
Join
db.2_activity activity
ON
(account.object = activity.contact)
left JOIN
db.VAL val1
ON val1.obj_row_id = activity.CAMPAIGN AND (val1.FIELD in(850))
left JOIN
db.VAL val2
ON val2.obj_row_id = activity.CAMPAIGN AND (val2.FIELD in(851))
此insert查询有问题,但我找不到问题所在。根据您的评论,您希望根据结果创建新表。在子句中使用
SELECT
account.STRING0,
activity.CONTACT,
account.STRING2,
activity.TEMPLATE,
activity.NAME ,
activity.EXECUTION,
activity.SENDDATE,
Activity.OPENDATE,
Activity.CLICKDATE INTO NEW_TABLE
FROM
db.1_account account
Join
db.2_activity activity
ON
(account.object = activity.contact)
....
创建空白表与在将数据插入表时不提及列无关
您说要插入到特定列中,但没有提到要插入数据的表的列名
无论如何,假设这是您想要实现的,我希望下面的代码可以帮助您
Insert into name.table1(yourcolumn1,yourcolumn2,...)SELECT account.STRING0, activity.CONTACT,account.STRING2,activity.TEMPLATE,activity.NAME ,activity.EXECUTION,activity.SENDDATE,Activity.OPENDATE,Activity.CLICKDATE FROM
db.1_account account Join
db.2_activity activity
ON
(account.object = activity.contact) left JOIN
db.VAL val1
ON val1.obj_row_id = activity.CAMPAIGN AND (val1.FIELD in(850)) left JOIN db.VAL val2
ON val2.obj_row_id = activity.CAMPAIGN AND (val2.FIELD in(851))
您是试图根据select查询结果创建新表,还是试图将结果插入现有表中。同时提及您正在使用的RDBMS
(1)在数据库中标记问题。(2) 编辑问题并包含您遇到的错误。(3)显示table1
的结构,或在insert
中包含table1
的列。我为这次插入创建了空白表,以便将所有列数据都放入新的空白表中。我知道我需要定义新表,即使用正确参数创建表,但需要使用哪些命令来提供这些参数参数:以下参数:string0=integer,String2=char 255,Contact=char 255,template=char 255,name=char 255,Execution=char 255,Senddate=timestamp,Opendate=timestamp,clickdate=timestamp我创建了一个带有以下参数的表:create table db.TEST1(string0整数,Contact char(255),EXT_String2 char(255),template char(255),名称字符(255),执行字符(255),发送日期时间戳,打开日期时间戳,点击日期时间戳,)当我这样做时,它在第二行上给了我一个错误,STRING0没有找到。我是否必须将之前的所有列都放入新表中。或者手动将这些列添加到新表中,或者我应该做什么?您的新表中是否有一个名为STRING0
的列还没有,我希望我可以通过一个查询来导入数据和把这些专栏带到新的地方table@meelismelx433-您正在使用哪些RDBMS,如Sql server、Orcale、Mysql、Postgre等。
我正在使用Sybase Sql server