SQL Server-关于UNION和USE函数的语法
在我希望查询的同一台服务器上有一系列数据库。我正在使用相同的代码来查询数据库,并希望结果显示在单个列表中 我使用“USE”指定要查询的数据库,然后创建一些临时表对数据进行分组,然后使用最终的SELECT语句将数据库中的所有数据合并在一起SQL Server-关于UNION和USE函数的语法,sql,sql-server,tsql,Sql,Sql Server,Tsql,在我希望查询的同一台服务器上有一系列数据库。我正在使用相同的代码来查询数据库,并希望结果显示在单个列表中 我使用“USE”指定要查询的数据库,然后创建一些临时表对数据进行分组,然后使用最终的SELECT语句将数据库中的所有数据合并在一起 SELECT SomeColumn = T.SomeColumn FROM FirstDatabase.Schema.TableName AS T UNION ALL SELECT SomeColumn = T.SomeColumn FR
SELECT
SomeColumn = T.SomeColumn
FROM
FirstDatabase.Schema.TableName AS T
UNION ALL
SELECT
SomeColumn = T.SomeColumn
FROM
SecondDatabase.Schema.YetAnotherTable AS T
然后我使用UNION,然后是下一个数据库的第二个USE命令,依此类推
SQL Server在单词“UNION”上显示语法错误,但没有提供任何有关问题来源的帮助
我可能缺少一个角色吗。目前我没有在任何地方使用(或)。您应该在表名之前使用数据库名:
SELECT valueFromBase1
FROM `database1`.`table1`
WHERE ...
UNION
SELECT valueFromBase2
FROM `database2`.`table2`
WHERE ...
应在表名之前使用数据库名:
SELECT valueFromBase1
FROM `database1`.`table1`
WHERE ...
UNION
SELECT valueFromBase2
FROM `database2`.`table2`
WHERE ...
USE
语句只是将会话重定向到同一实例上的另一个数据库,在这个问题上,实际上不需要从一个数据库切换到另一个数据库(有一些罕见的例外)
使用三部分符号连接结果集。您可以在连接到任何数据库时执行此操作
SELECT
SomeColumn = T.SomeColumn
FROM
FirstDatabase.Schema.TableName AS T
UNION ALL
SELECT
SomeColumn = T.SomeColumn
FROM
SecondDatabase.Schema.YetAnotherTable AS T
引擎将自动检查每个数据库上的登录用户,并验证您对基础表或视图的权限
UNION
将结果集添加在一起,除了SELECT
在UNION
之间执行USE
语句之外,您不能执行其他操作(如USE
),而USE语句只会重定向会话以连接到同一实例上的不同数据库,在这个问题上,您实际上不需要从一个数据库切换到另一个数据库(这里有一些罕见的例外)
使用三部分符号连接结果集。您可以在连接到任何数据库时执行此操作
SELECT
SomeColumn = T.SomeColumn
FROM
FirstDatabase.Schema.TableName AS T
UNION ALL
SELECT
SomeColumn = T.SomeColumn
FROM
SecondDatabase.Schema.YetAnotherTable AS T
引擎将自动检查每个数据库上的登录用户,并验证您对基础表或视图的权限
UNION
将结果集添加到一起,除了在UNION
之间选择之外,您不能执行另一个操作(如使用),您可以发布一些代码吗?不要使用集
,完全限定您的表:数据库.schema.table
您可以发布一些代码吗?不要使用集
,完全限定您的表:database.schema.table