SQL 安装的程序数未正确返回
SQL Count of programs installed not returning correctly
我正在尝试统计安装在服务器和客户端上的每个软件。当我 运行 第一个查询时,我返回了 4000 多行。
SELECT a.DisplayName0,c.Name0 FROM v_GS_ADD_REMOVE_PROGRAMS a, v_R_System c
WHERE A.DisplayName0 NOT LIKE 'hotfix for%'
AND A.DisplayName0 LIKE 'CCC Help Norwegian%'
GROUP BY c.Name0, A.DisplayName0
ORDER BY c.Name0
当我 运行 这个查询时,我只能获取计数而不显示每个客户端名称,它只有 25 个,而它应该超过 4000 个。
SELECT COUNT(*), a.DisplayName0,c.Name0 FROM v_GS_ADD_REMOVE_PROGRAMS a, v_R_System c
WHERE A.DisplayName0 NOT LIKE 'hotfix for%'
AND A.DisplayName0 LIKE 'CCC Help Norwegian%'
GROUP BY c.Name0, A.DisplayName0
ORDER BY c.Name0
知道哪里出了问题吗? TIA
您似乎在交叉连接两个表。您可能需要使用 INNER JOIN。我不知道这两个表中的公共列是什么,但您的解决方案最终将如下所示:
SELECT COUNT(*), a.DisplayName0,c.Name0
FROM v_GS_ADD_REMOVE_PROGRAMS a
INNER JOIN v_R_System c
ON c.<some column> = a.<some column>
WHERE A.DisplayName0 NOT LIKE 'hotfix for%'
AND A.DisplayName0 LIKE 'CCC Help Norwegian%'
GROUP BY c.Name0, A.DisplayName0
ORDER BY c.Name0
我正在尝试统计安装在服务器和客户端上的每个软件。当我 运行 第一个查询时,我返回了 4000 多行。
SELECT a.DisplayName0,c.Name0 FROM v_GS_ADD_REMOVE_PROGRAMS a, v_R_System c
WHERE A.DisplayName0 NOT LIKE 'hotfix for%'
AND A.DisplayName0 LIKE 'CCC Help Norwegian%'
GROUP BY c.Name0, A.DisplayName0
ORDER BY c.Name0
当我 运行 这个查询时,我只能获取计数而不显示每个客户端名称,它只有 25 个,而它应该超过 4000 个。
SELECT COUNT(*), a.DisplayName0,c.Name0 FROM v_GS_ADD_REMOVE_PROGRAMS a, v_R_System c
WHERE A.DisplayName0 NOT LIKE 'hotfix for%'
AND A.DisplayName0 LIKE 'CCC Help Norwegian%'
GROUP BY c.Name0, A.DisplayName0
ORDER BY c.Name0
知道哪里出了问题吗? TIA
您似乎在交叉连接两个表。您可能需要使用 INNER JOIN。我不知道这两个表中的公共列是什么,但您的解决方案最终将如下所示:
SELECT COUNT(*), a.DisplayName0,c.Name0
FROM v_GS_ADD_REMOVE_PROGRAMS a
INNER JOIN v_R_System c
ON c.<some column> = a.<some column>
WHERE A.DisplayName0 NOT LIKE 'hotfix for%'
AND A.DisplayName0 LIKE 'CCC Help Norwegian%'
GROUP BY c.Name0, A.DisplayName0
ORDER BY c.Name0