在 select 中添加多个条件
Add multiple criteria in select
我正在尝试使用 select 中的一个附加条件来完成我的查询。这是现在的样子
SELECT
c.hostname,
s.executablepath,
s.version,
(
SELECT TOP 1 filesize
FROM [inventorydatabase].[inv].[softwareview]
WHERE version = s.version
AND PathName = s.ExecutablePath
) AS 'Size'
FROM tblApplications ca
INNER JOIN tblSoftware s ON s.Software = cs.Software
INNER JOIN tblComputer c ON ca.CompID = c.CompID
因此,如果我在 version
表和 path
表中都匹配,则此查询会给出结果。
...但我需要添加额外的条件,以便它给我 'Size' 结果,即使我在两个 pathname = s.executablepath
表中都只有匹配。
因为有些应用程序没有可用的版本,它只在 Size
下给我 NULL
。
希望有人帮我解决这个问题。
假设“有些应用程序没有可用的版本” 表示版本为空,那么子查询将是:
select top (1) filesize
from [inventorydatabase].[inv].[softwareview]
where pathName = s.ExecutablePath and (
version = s.version or
version is null
)
我正在尝试使用 select 中的一个附加条件来完成我的查询。这是现在的样子
SELECT
c.hostname,
s.executablepath,
s.version,
(
SELECT TOP 1 filesize
FROM [inventorydatabase].[inv].[softwareview]
WHERE version = s.version
AND PathName = s.ExecutablePath
) AS 'Size'
FROM tblApplications ca
INNER JOIN tblSoftware s ON s.Software = cs.Software
INNER JOIN tblComputer c ON ca.CompID = c.CompID
因此,如果我在 version
表和 path
表中都匹配,则此查询会给出结果。
...但我需要添加额外的条件,以便它给我 'Size' 结果,即使我在两个 pathname = s.executablepath
表中都只有匹配。
因为有些应用程序没有可用的版本,它只在 Size
下给我 NULL
。
希望有人帮我解决这个问题。
假设“有些应用程序没有可用的版本” 表示版本为空,那么子查询将是:
select top (1) filesize
from [inventorydatabase].[inv].[softwareview]
where pathName = s.ExecutablePath and (
version = s.version or
version is null
)