我有SQL Server 2012数据库,我需要查询数据库并获得与MAX相关的结果(Rule_ID)和MAX(CI_ID)
但我无法获得与MAX(CI_ID)相关的结果,所有CI_ID版本都在结果中。
USE CM_T01
SELECT Max_id, MAX(CIVersion), Netbios_Name0, RuleName, RuleDescription, prereifiedvalue, complianceState
FROM v_CI_CurrentComplianceStatus
INNER JOIN
(
SELECT CI_ID,Rule_ID, Rulename, RuleDescription,criteria, MAX(Rule_ID) OVER(PARTITION BY Rulename) AS Max_id
from v_cirules
where rulename like '%Account lockout duration%' AND RuleDescription like '%applicable%'
group by Rule_ID,RuleName, RuleDescription,CI_ID,Criteria) as v_CIRules
ON v_CIRules.CI_ID = v_CI_CurrentComplianceStatus.CI_ID
INNER JOIN v_R_System
ON v_R_System.ResourceID = v_CI_CurrentComplianceStatus.ItemKey
LEFT JOIN v_CICurrentRuleDetail
ON v_CICurrentRuleDetail.CurrentComplianceStatusID = v_CI_CurrentComplianceStatus.CI_CurrentComplianceStatusID
where netbios_name0='TRISTSCCM-PS'
GROUP BY Netbios_Name0, RuleName, RuleDescription, prereifiedvalue, complianceState,v_cirules.CI_ID,v_CIRules.Max_id,Criteria
结果
Max_id (No column name) Netbios_Name0 RuleName RuleDescription prereifiedvalue complianceState
16780130 4 TRISTSCCM-PS OS Hardening: Account Lockout Policy - Account lockout duration Applicable /Account lockout duration Must equal to 10 NULL 1
16780130 8 TRISTSCCM-PS OS Hardening: Account Lockout Policy - Account lockout duration Applicable /Account lockout duration Must equal to 10 NULL 1
16780130 12 TRISTSCCM-PS OS Hardening: Account Lockout Policy - Account lockout duration Applicable /Account lockout duration Must equal to 10 NULL 1
答案 0 :(得分:0)
var_dump()