T-SQL INSERT INTO 与 LEFT JOIN [英] T-SQL INSERT INTO with LEFT JOIN

查看:43
本文介绍了T-SQL INSERT INTO 与 LEFT JOIN的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

抱歉,这是一个语法问题,但在 T-SQL 中,我如何在 INSERT 语句中指定我想要插入的数据库以及我想要加入的 LEFT JOIN 中的数据库?

Sorry this is a syntax question, but in T-SQL how do I specify in INSERT statement in which DB I want to INSERT and in LEFT JOIN from which DB I want to join?

if not exists (select * from [DB_A].[dbo.a_test])
create table [DB_A].[dbo.a_test] (
a int(10) ,
b int(10) ,
c varchar(200) ,
d varchar(200) ,
e varchar(200) ,            
PRIMARY KEY (a)
)


INSERT INTO [DB_A].[dbo.a_test] (a,b,c, d)
VALUES dbo.products.product_info, dbo.products.product_date, dbo.products.smth, *dbo.program.program_name*, dbo.program.program_smth
FROM [DB_B].dbo.products    
LEFT JOIN [DB_B].dbo.program
ON dbo.program.program_name = dbo.products.product_info

很抱歉问这样一个菜鸟问题,但我找不到合适的例子.

Sorry for such a noob question, but I could not find a suitable example.

推荐答案

你想要 insert into ...选择:

INSERT INTO [DB_A].[dbo.a_test](a,b,c,d,e) --ADDED A COLUMN
    select p.product_info, p.product_date, p.smth, pr.program_name, pr.program_smth
    FROM [DB_B].dbo.products p LEFT JOIN
         [DB_B].dbo.program pr
         ON p.program_name = pr.product_info;

我还修复了查询以使用表别名,因此更易于阅读.

I also fixed the query to use table aliases, so it is much easier to read.

这篇关于T-SQL INSERT INTO 与 LEFT JOIN的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆