首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >在WQL/SCCM中连接两个表

在WQL/SCCM中连接两个表
EN

Stack Overflow用户
提问于 2012-09-25 21:04:50
回答 4查看 12.2K关注 0票数 2

我觉得我在这里真的很愚蠢。

我使用的是vbscript。我已连接到SCCM服务器

代码语言:javascript
复制
Set locator = CreateObject("WbemScripting.SWbemLocator")
Set connection  = locator.ConnectServer("SERVERNAME", "Root\SMS\SITENAME")

然后我有一个WMI WQL查询:

代码语言:javascript
复制
Set Collections = connection.ExecQuery("SELECT LastStatusTime,AdvertisementID,
  LastStateName,AdvertisementName 
  FROM SMS_ClientAdvertisementStatus 
  INNER JOIN SMS_Advertisement 
  ON SMS_Advertisement.AdvertisementID = SMS_ClientAdvertisementStatus.AdvertisementID 
  WHERE  LastStateName = 'Succeeded' 
  AND LastStatusTime > '2012-09-25'")

FOR each Collection in Collections 

        Collection.LastStatusTime 
        Collection.AdvertisementID

Next

我认为我对WQL的理解有一个差距。我似乎能够在这个查询中连接这两个WQL“表”,但我只能从SMS_ClientAdvertisementStatus返回值。

如果我试图从我加入的表SMS_Advertisement返回任何东西,我只会得到一个错误。

你能在WQL中加入“表”吗--如果它们是表的话?或者我必须有一个嵌套的查询?或者,是否有其他方法可以从两个表中返回数据?

EN

回答 4

Stack Overflow用户

回答已采纳

发布于 2012-09-26 02:12:54

WQL不支持连接,但是您可以使用MOF来定义包含来自多个类的数据的WMI类。请看这里:

Creating a New Instance from Old Properties

票数 1
EN

Stack Overflow用户

发布于 2012-09-25 22:19:11

SQL语言只是WQL的一个子集,不支持JOIN语句,在某些情况下可以使用ASSOCIATORS OF

票数 0
EN

Stack Overflow用户

发布于 2014-11-24 14:58:02

WQL确实支持joins。下面是一个示例工作查询,它列出了与集合名称匹配的设备名称。适用于SCCM 2012。

代码语言:javascript
复制
select SMS_R_SYSTEM.Name from SMS_R_System inner join SMS_Collection as Systems on Systems.Name = SMS_R_System.Name
票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/12583601

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档