本机数据库间的跨度,引用举例:
联合查询这两个表
select * from dbA.dbo.tb1 t1
left join dbB.dbo.tb2 t2 on t1.key1=t2.key2
关键:表明的前缀:dbA.dbo.tb1,即:数据库名.dbo.表名
计算机网络间数据库跨度,举例:
SELECT I.*, M.*FROM OPENROWSET('SQLOLEDB', '192.168.10.2' 'sa' '123', [Database1].[dbo].[Table1]) I
INNER JOIN (
SELECT DISTINCT P.IPSAppID AppId, P.DepartmentId, C.CategoryId, T.Creator
FROM OPENROWSET
('SQLOLEDB', '192.168.10.1' 'sa' '123', [Database2].[dbo].[table2]) P LEFT JOIN (
SELECT DISTINCT LTRIM(DepartmentId) DepartmentId, UserName Creator
FROM OPENROWSET('SQLOLEDB', '192.168.10.1' 'sa' '123', [Database3].[dbo].[view1])
WHERE UserName IN
(SELECT DISTINCT Creator
FROM OPENROWSET('SQLOLEDB', '192.168.10.1' 'sa' '123', [Database1].[dbo].[Table1]) WHERE AppId = '8cefca00-9733-4976-951a-e19346603717' AND CategoryId = 'b14b4852-c0e4-4db6-a91e-704b699a8fa2')) T
ON P.DepartmentId = T.DepartmentId
LEFT JOIN OPENROWSET('SQLOLEDB', '192.168.10.1' 'sa' '123', [Database2].[dbo].[Table3]) C ON C.AppId = P.IPSAppID
WHERE P.ClassId IS NULL AND T.Creator IS NOT NULL AND C.CategoryName = 'activity') M
ON M.Creator = I.Creator
WHERE I.AppId = '8cefca00-9733-4976-951a-e19346603717' AND I.CategoryId = 'b14b4852-c0e4-4db6-a91e-704b699a8fa2'
如果在同一个服务器中的不同数据库,可以跨数据库建视图。比如有两个数据库A 和B B数据库中有个表TA
那么可以在A数据库中建个视图,取自B数据库中表TA中的数据
use A
go
creat view B_TA as
select * from B..TA
go
这样就在A数据库中建一个视图B_TA 数据取自B数据库中TA表
/12分步阅读打开SQL Server Management Studio,按图中的路径进入导入数据界面。
2/12
导入的时候需要将EXCEL的文件准备好,不能打开。点击下一步。
3/12
数据源:选择“Microsoft Excel”除了EXCEL类型的数据,SQL还支持很多其它数据源类型。
4/12
选择需要导入的EXCEL文件。点击浏览,找到导入的文件确定。
5/12
再次确认文件路径没有问题,点击下一步。
6/12
默认为是使用的WINODWS身份验证,改为使用SQL身份验证。输入数据库密码,注意:数据库,这里看看是不是导入的数据库。也可以在这里临时改变,选择其它数据库。
7/12
选择导入数据EXCEL表内容范围,若有几个SHEET表,或一个SHEET表中有些数据我们不想导入,则可以编写查询指定的数据进行导入。点击下一步。
8/12
选择我们需要导入的SHEET表,比如我在这里将SHEET表名改为price,则导入后生面的SQL数据库表为price$。点击进入下一步。
9/12
点击进入下一步。
10/12
在这里完整显示了我们的导入的信息,执行内容,再次确认无误后,点击完成,开始执行。
11/12
可以看到任务执行的过程和进度。
12/12
执行成功:我们可以看看执行结果,已传输1754行,表示从EXCEL表中导入1754条数据,包括列名标题。这样就完成了,执行SQL查询语句:SELECT * FROM price$就可以查看已导入的数据内容。
1. 表结构完全一样
insert into 表1
select * from 表2
2. 表结构不一样(这种情况下得指定列名)
insert into 表1 (列名1,列名2,列名3)
select 列1,列2,列3 from 表2
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)