sql - SQL Server - 围绕 UNION 和 USE 函数的语法
问题描述
在我希望查询的同一台服务器上有一系列数据库。我正在使用相同的代码来查询数据库,并希望结果出现在一个列表中。
我使用“USE”来指定要查询的数据库,然后创建一些临时表来对我的数据进行分组,然后使用最终的 SELECT 语句将数据库中的所有数据汇集在一起。
然后我使用 UNION,然后是下一个数据库的第二个 USE 命令,依此类推。
SQL Server 在单词“UNION”上显示语法错误,但没有提供有关问题根源的任何帮助。
有没有可能我错过了一个角色。目前我没有在任何地方使用 ( 或 )。
解决方案
该USE
语句只是重定向您的会话以连接到同一实例上的不同数据库,在这件事上您实际上不需要从数据库切换到数据库(但有一些罕见的例外)。
使用 3 部分表示法加入您的结果集。您可以在连接到任何数据库时执行此操作。
SELECT
SomeColumn = T.SomeColumn
FROM
FirstDatabase.Schema.TableName AS T
UNION ALL
SELECT
SomeColumn = T.SomeColumn
FROM
SecondDatabase.Schema.YetAnotherTable AS T
该引擎将自动检查您在每个数据库上的登录用户,并验证您对基础表或视图的权限。
UNION
将结果集添加在一起,您不能发出除between之外的其他操作(如USE
)。SELECT
UNION
推荐阅读
- python - 如何读取文本文件并转换为列表以与 Python 中的统计数据包一起使用
- python - 遍历字典以创建列表
- flutter - IOWebSocketChannel 检测连接何时打开
- c# - 为什么 TextBox1_Click 在尝试对文本进行单击事件时不起作用?
- jquery - 选中复选框时如何更新滑块最大值
- gradle - 如何从独立插件将类文件添加到 Gradle 源集?
- c++ - 在矩阵逆变器上工作,我的指数循环由于某种原因无法工作
- regex - 正则表达式:如何在某个单词之后按字母顺序查找任意长度的单词
- java - 我的 res 文件夹不断收到一条错误消息:错误:R 类是公共的,应在名为 R.java 的文件中声明
- machine-learning - 10个epoch的训练和5个epoch的两次训练效果一样吗?