我并不是在寻找像 SQL 中的内连接、外连接或左连接或右连接这样的连接。我正在寻找更像这样的东西:我在 PowerShell 中有一个表 1,其中包含以下数据
我并不是在寻找 SQL 中的内连接、外连接、左连接或右连接之类的连接。我正在寻找更像这样的东西:
我在 PowerShell 中有一个表 1,其中包含以下数据
描述 | 生产 | 姓名 |
---|---|---|
单元格 1 | 单元格 2 | 牢房 3 |
牢房 4 | 牢房 5 | 牢房 6 |
该查询的结果是: gwmi -Namespace "root\CIMV2 -Class "Win32_PnPEntity" | select Description, Manufacture, Name, | Where Name -Like "*CellContents*"
我还有另一个表,其中的内容也来自类似的查询:
描述 | 生产 | 姓名 |
---|---|---|
告诉 1 | 告诉 2 | 告诉 3 |
告诉 4 | 告诉 5 | 告诉 6 |
该查询的结果是: gwmi -Namespace "root\CIMV2 -Class "Win32_PnPEntity" | select Description, Manufacture, Name, | Where Name -Like "*TellContents*"
该表的最终输出应如下所示:
描述 | 生产 | 姓名 |
---|---|---|
单元格 1 | 单元格 2 | 牢房 3 |
牢房 4 | 牢房 5 | 牢房 6 |
告诉 1 | 告诉 2 | 告诉 3 |
告诉 4 | 告诉 5 | 告诉 6 |
经过研究,我发现一个问题,其内容如下:
在 PowerShell 中,将两个表合并为一个的最佳方法是什么
但是,这似乎适用于主键。我想我正在寻找值之间的并集。我已经在网站上搜索了一段时间,并且不断发现似乎具有主键的连接,以及一些需要外部库(例如“连接对象”)的连接。
(gwmi Query1) UNION (gwmi Query2)
上述方法无效。
(gwmi Query1).Append(gwmi Query2)
上述方法无效。
因此,由于两个输出都是来自同一类的结果,因此您可以使用 -or
:
Get-CimInstance -Namespace root\CIMV2 -Class Win32_PnPEntity |
Where-Object { $_.Name -like '*CellContents*' -or $_.Name -like '*TellContents*' } |
Select-Object Description, Manufacture, Name
使用 WQL ,过滤器将类似于:
$filter = "Name LIKE '%CellContents%' OR Name LIKE '%TellContents%'"
Get-CimInstance -Namespace root\CIMV2 -Class Win32_PnPEntity -Filter $filter |
Select-Object Description, Manufacture, Name