给定以下表格:
已安装应用程序
MachineName | AppName | Version
-------------------------------
machine01 | App01 | 1.1
machine01 | App02 | 1.0
machine01 | App03 | 1.5
machine02 | App04 | 2.0
machine02 | App02 | 1.0
machine02 | App01 | 1.1
machine03 | App06 | 7.9.9
machine03 | App01 | 1.1
machine03 | App07 | 11.5
machine03 | App02 | 1.0
我可以帮助您翻译以下涉及IT技术的内容,需要翻译的内容如下:
我需要选择在给定“n”台机器上常见的应用程序
。这是“n”个集合之间的交集。然而,我很难想出一个合适的查询。
我知道我可以像这样做:
SELECT AppName, Version
FROM InstalledApps
WHERE MachineName = 'machine01'
INTERSECT
SELECT AppName, Version
FROM InstalledApps
WHERE MachineName = 'machine02'
那将给我...
AppName | Version
------------------
App01 | 1.1
App02 | 1.0
然而,是否有一种方法可以在不事先知道机器数量的情况下完成此操作?类似于:
SELECT......
FROM InstalledApps
WHERE MachineName IN ('machine01',...'machine99')
(MachineName, AppName, Version)
这个组合键是否允许出现重复的条目? - Andriy M