简体   繁体   中英

SQL Query result is different every run on a static DB

We have Microsoft SQL Server10.50.6529. Whenever I run this query I get different results:

SELECT YEAR(A.EndZeit) AS Jahr
    , MONTH(A.EndZeit) AS Monat
    , CASE b.Priority
        WHEN 3
            THEN 'Low'
        ELSE ' '
        END AS "Priority"
    , count(*) AS Anzahl
FROM VIEW_INC_CI B
JOIN (
    SELECT Endzeit
        , Incident_Number
    FROM (
        SELECT ROW_NUMBER() OVER (
                PARTITION BY A.Incident_Number ORDER BY A.Incident_Number
                ) AS rk
            , A.Incident_Number
            , A.EndZeit
        FROM Calculation.IncidentAssignmentHistory A
        JOIN SPG.GruppenGruppen G
            ON A.AssignedGroupID = G.Support_Group_ID
                AND G.GroupName = 'GRPName'
        ) T
    WHERE rk = 1
    ) A
    ON B.Incident_Number = A.Incident_Number
WHERE B.Priority = 3
    AND B.STATUS != 6
    AND B.resolution_category NOT IN ('CategoryXY')
GROUP BY MONTH(A.EndZeit)
    , YEAR(A.EndZeit)
    , B.Priority
ORDER BY YEAR(A.EndZeit)
    , MONTH(A.EndZeit);

I have replaced both inner queries with temporary tables having the same effect. The DB is static, what means, there aren't created any additional records while the query is running.

Does anyone have an idea, how to get around this strange behavior?

We get: first Try:

Jahr    Monat   Prio    Anzahl
2013    10  Low 772
2013    11  Low 831
2013    12  Low 777
2014    1   Low 1087
2014    2   Low 1033
2014    3   Low 726
2014    4   Low 763
2014    5   Low 1799
2014    6   Low 1964
2014    7   Low 1912
2014    8   Low 1776
2014    9   Low 1682
2014    10  Low 1715
2014    11  Low 1623
2014    12  Low 1507
2015    1   Low 1755
2015    2   Low 1994

Second Try:

2013    10  Low 775
2013    11  Low 829
2013    12  Low 778
2014    1   Low 1087
2014    2   Low 1031
2014    3   Low 729
2014    4   Low 758
2014    5   Low 1797
2014    6   Low 1973
2014    7   Low 1912
2014    8   Low 1779
2014    9   Low 1678
2014    10  Low 1706
2014    11  Low 1620
2014    12  Low 1516
2015    1   Low 1748
2015    2   Low 2002

This is the Definition of View_Incident_CI:

USE [PREPORTDWH01]
GO

/****** Object:  View [dbo].[VIEW_INC_CI]    Script Date: 01/11/2017 11:06:07 ******/
SET ANSI_NULLS ON
GO

SET QUOTED_IDENTIFIER ON
GO

create view [dbo].[VIEW_INC_CI] as (
select 
 H.Entry_ID,
 H.Submitter,
 H.Submit_Date,
 H.Assignee_Login_ID,
 H.Last_Modified_By,
 H.Last_Modified_Date,
 H.Status,
 H.Short_Description,
 H.Assignee_Groups,
 H.InstanceId,
 H.Vendor_Assignee_Groups,
 H.User_ID_Permissions,
 H.z1G_DefaultVUI,
 H.RootRequestName,
 H.Created_from_Template,
 H.Product_Categorization_Tier_1,
 H.Product_Categorization_Tier_2,
 H.Product_Categorization_Tier_3,
 H.Department,
 H.Site_Group,
 H.Region,
 H.LookupKeyword,
 H.Product_Name,
 H.Manufacturer,
 H.Product_Model_Version,
 H.Escalated_,
 H.Site,
 H.Reason_Code,
 H.Reason_Description,
 H.Return_Code,
 H.Assignee_Id,
 H.SRAttachment,
 H.Created_By,
 H.Show_For_Process,
 H.Command,
 H.Enable_Assignment_Engine,
 H.Assignee_Select_Form,
 H.SRInstanceID,
 H.HPD_Template_ID,
 H.Original_Last_Modified_Date,
 H.Original_Last_Modified_By,
 H.zD_NextDueDate_Time,
 H.PreviousStatus,
 H.StageCondition,
 H.CurrentStage,
 H.CurrentStageNumber,
 H.UnknownUser,
 H.SRMS_Registry_Instance_ID,
 H.SRMSAOIGuid,
 H.SRID,
 H.TemplateID,
 H.DataTags,
 H.SLMLookupTblKeyword,
 H.Last__Assigned_Date,
 H.TicketType,
 H.Association_Description,
 H.Created_From_flag,
 H.Flag_Create_Request,
 H.Component_ID,
 H.mc_ueid,
 H.cell_name,
 H.SLMEventLookupTblKeyword,
 H.policy_name,
 H.status_incident,
 H.status_reason2,
 H.root_component_id_list,
 H.root_incident_id_list,
 H.Impact_OR_Root,
 H.bOrphanedRoot,
 H.OptionForClosingIncident,
 H.first_name2,
 H.last_name2,
 H.Login_ID,
 H.Global_OR_Custom_Mapping,
 H.use_case,
 H.BiiARS_01,
 H.BiiARS_02,
 H.BiiARS_03,
 H.BiiARS_04,
 H.BiiARS_05,
 H.z1D_TotalBreachedIncidentsCoun,
 H.z1D_TotalCriticalIncidentsCoun,
 H.ClientLocale,
 H.ServiceCI,
 H.HPD_CI,
 H.TemplateGUID,
 H.ServiceCI_ReconID,
 H.HPD_CI_ReconID,
 H.z1D_CI_FormName,
 H.CI,
 H.Service,
 H.z1D_Template_Name,
 H.INCAutoCloseResolved_Sec,
 H.z1D_VISFormView,
 H.z1D_VISProcessFlowView,
 H.z1D_VISTargetForm,
 H.z1D_VendorAccess,
 H.Direct_Contact_Corporate_ID,
 H.KMSGUID,
 H.HPD_CI_FormName,
 H.Kickback_Count,
 H.Last_Kickback_Date,
 H.EffortDurationHour,
 H.z2AF_Work_Log01001,
 H.z2AF_Work_Log02001,
 H.z2AF_Work_Log03001,
 H.ServiceCI_Class,
 H.Direct_Contact_Login_ID,
 H.Customer_Login_ID,
 H.z1D_ServiceHealth,
 H.Description,
 H.Company,
 H.Country,
 H.State_Province,
 H.City,
 H.Organization,
 H.Assigned_Support_Organization,
 H.Full_Name,
 H.Last_Name,
 H.First_Name,
 H.Middle_Initial,
 H.Contact_Client_Type,
 H.VIP,
 H.Contact_Sensitivity,
 H.Country_Code,
 H.Area_Code,
 H.Local_Phone,
 H.Extension,
 H.Desk_Location,
 H.Mail_Station,
 H.Street,
 H.Zip_Postal_Code,
 H.GEOnet,
 H.Internet_E_mail,
 H.Corporate_ID,
 H.Phone_Number,
 H.Categorization_Tier_1 as operationalcategorizationtier1,
 H.Categorization_Tier_2 as operationalcategorizationtier2,
 H.Categorization_Tier_3 as operationalcategorizationtier3,
 H.HR_ID,
 H.Site_ID,
 H.Assigned_Group_ID,
 H.Person_ID,
 H.Contact_Company,
 H.Service_Type,
 H.CI_Tag_Number,
 H.Status_PPL,
 H.Additional_Location_Details,
 H.Status_Reason,
 H.Detailed_Decription,
 H.Resolution,
 H.Incident_Number,
 H.Urgency,
 H.Impact,
 H.Priority,
 H.Priority_Weight,
 H.Cost_Center,
 H.Reported_Source,
 H.Assigned_Group,
 H.Assignee,
 H.Vendor_Phone,
 H.Assigned_Support_Company,
 H.Shifts_Flag,
 H.Assigned_Group_Shift_Name,
 H.Assigned_Group_Shift_ID,
 H.Owner_Support_Organization,
 H.Vendor_Name,
 H.Owner_Group,
 H.Owner_Support_Company,
 H.Owner_Group_ID,
 H.Time_Zone,
 H.Total_OLA_AcknowledgeEsc_Level,
 H.Total_Escalation_Level,
 H.Total_OLA_Resolution_Esc_Level,
 H.Reported_Date,
 H.Responded_Date,
 H.Last_Acknowledged_Date,
 H.Last_Resolved_Date,
 H.Closed_Date,
 H.Last_SLA_Hold_Date,
 H.Re_Opened_Date,
 H.SLA_Hold,
 H.Onwer_Group_Uses_SLA,
 H.Assigned_Group_Uses_OLA,
 H.Last_Date_Duration_Calculated,
 H.Effort_Time_Spent_Minutes,
 H.Vendor_Ticket_Number,
 H.Owner,
 H.Owner_Login_ID,
 H.Total_Time_Spent,
 H.Generic_Categorization_Tier_1 ,
 H.Generic_Categorization_Tier_2 ,
 H.Generic_Categorization_Tier_3 ,
 H.Vendor_Contact,
 H.Incident_Association_Type,
 H.Original_Incident_Number,
 H.Reported_to_Vendor,
 H.Patch_Last_Build_ID,
 H.Infrastructure_Chg_Initiated,
 H.Category,
 H.Reproduceable_Flag,
 H.Assign_To_Vendor,
 H.Broadcasted_Flag,
 H.Web_Incident_ID,
 H.SLM_Priority,
 H.OLA_Hold,
 H.SLA_Responded,
 H.Acknowledgment_Start_Date,
 H.Resolution_Start_Date,
 H.EH,
 H.DR,
 H.SLA_Res_Business_Hour_Seconds,
 H.Assignment_Method,
 H.Resolution_Category,
 H.Next_Target_Date,
 H.SLM_Status,
 H.Direct_Contact_Internet_E_mail,
 H.Vendor_Organization,
 H.Vendor_Group,
 H.Vendor_Group_ID,
 H.Vendor_Email,
 H.Vendor_Responded_On,
 H.Vendor_Last_Name,
 H.Vendor_First_Name,
 H.Vendor_Person_ID,
 H.Vendor_Resolved_Date,
 H.Group_Transfers,
 H.Total_Transfers,
 H.Individual_Transfers,
 H.Vendor_Login_ID,
 H.Vendor_Assignment_Status,
 H.Resolution_Method,
 H.Resolution_Category_Tier_2,
 H.Resolution_Category_Tier_3,
 H.Closure_Product_Category_Tier1,
 H.Closure_Product_Category_Tier2,
 H.Closure_Product_Category_Tier3,
 H.Closure_Product_Name,
 H.Closure_Product_Model_Version,
 H.Closure_Manufacturer,
 H.SLA_Breach_Reason,
 H.SLA_Breach_Exception,
 H.Closure_Source,
 H.Satisfaction_Rating,
 H.Estimated_Resolution_Date,
 H.Required_Resolution_DateTime,
 H.Inbound,
 H.Outbound,
 H.Direct_Contact_Company,
 H.Direct_Contact_Last_Name,
 H.Direct_Contact_First_Name,
 H.Direct_Contact_Middle_Initial,
 H.Direct_Contact_Phone_Number,
 H.Direct_Contact_Organization,
 H.Direct_Contact_Department,
 H.Direct_Contact_Region,
 H.Direct_Contact_Site_Group,
 H.Direct_Contact_Site,
 H.Direct_Contact_Person_ID,
 H.Direct_Contact_Street,
 H.Direct_Contact_Country,
 H.Direct_Contact_State_Province,
 H.Direct_Contact_City,
 H.Direct_Contact_Zip_Postal_Code,
 H.Direct_Contact_Time_Zone,
 H.Direct_Contact_Desk_Location,
 H.Direct_Contact_Mail_Station,
 H.Direct_Contact_Location_Detail,
 H.Direct_Contact_Site_ID,
 H.Direct_Contact_Country_Code,
 H.Direct_Contact_Area_Code,
 H.Direct_Contact_Local_Number,
 H.Direct_Contact_Extension,
 H.z2AF_Work_Log01002,
 H.z2AF_Work_Log02002,
 H.z2AF_Work_Log03002,
 H.Attachment,
 H.Support_Group_Role,
 H.Reuters__c,
 H.Solution_by___c,
 H.Character_Field,
 H.Responsible___c,
 H.ObservedBy,
 H.Responsible_,
 H.Solution_by_,
 H.Reuters,
 H.SIX_Restricted_Data_link2,
 H.SIX_Restricted_Data_link3,
 H.ResolutionAttachment,
 H.ResolutionAttachment__c,
 B.RequestId,
 B.Submitter as CI_Submitter,
 B.CreateDate as CI_CreateDate,
 B.AssignedTo,
 B.LastModifiedBy,
 B.ModifiedDate,
 B.Status as CI_Status,
 B.ShortDescription,
 B.CMDBRowLevelSecurity,
 B.InstanceId as CI_IncstanceId,
 B.CMDBWriteSecurity,
 B.SerialNumber,
 B.Category as [Product Categorization Tier 1],
 B.Type as [Product Categorization Tier 2],
 B.Item  as [Product Categorization Tier 3],
 B.Name as [CI Name],
 B.History,
 B.Description as CI_Description,
 B.Notes,
 B.Model as [Product Name],
 B.ManufacturerName,
 B.ManufacturerID,
 B.VersionNumber,
 B.Site as CI_Site,
 B.Room,
 B.Supported,
 B.UsersAffected,
 B.LastScanDate,
 B.OwnerContact,
 B.OwnerName,
 B.ImpactComputationModel,
 B.NameFormat,
 B.FailedAutomaticIdentification,
 B.Priority as CI_Priority,
 B.AccountID,
 B.ClassId,
 B.OpIdWeakReference,
 B.DatasetId,
 B.RelDataSetId1,
 B.RelDataSetId2,
 B.MarkAsDeleted,
 B.ReconciliationIdentity,
 B.RelReconciliationIdentity1,
 B.RelReconciliationIdentity2,
 B.RelLeadInstanceId,
 B.RelLeadClassId,
 B.LastREJobrunId,
 B.RelInstanceId1,
 B.RelClassId1,
 B.RelInstanceId2,
 B.RelClassId2,
 B.CDMachineID,
 B.TokenId,
 B.TokenFormat,
 B.Confidentiality,
 B.Availability,
 B.Integrity,
 B.AttributeDataSourceList,
 B.ReferenceInstance,
 B.zCMDBEngTimestampStub,
 B.DictionaryId,
 B.NormalizationStatus,
 B.CITag,
 B.ParentCITag,
 B.MFIntegrationID,
 B.ReconciliationMergeStatus,
 B.ADDMIntegrationId,
 B.MarketVersion,
 B.NEFeatureStatusMask,
 B.ReconciliationIdType,
 B.LastUpdatedDatasetId,
 B.ReconciliationIdChanged,
 B.ReconciliationIdentificationEr,
 B.SIX_TMP_Avail_Date,
 B.SIX_TMP_CostCenter,
 B.SIX_TMP_TagNumber,
 B.SIX_TMP_AccountingCode,
 B.SIX_TMP_Inst_Date,
 B.SIX_TMP_Received_Date,
 B.SIX_TMP_Purchase_Date,
 B.SIX_TMP_ServiceCode,
 B.Company as CI_Company,
 B.SIX_TMP_AssetID_CIID
from  HPD_HELP_DESK H
join  AST_CMDB_Associations A
on    H.Incident_Number = A.Request_ID01
join   BMC_CORE_BMC_BaseElement B
on     A.Request_ID02 =     B.ReconciliationIdentity
)
GO

I have seen similar problems when using row_number window function. Most probably that your ordering is not breaking the tie. In case of duplicates in Incident_Number without breaking the tie it can result in ranking rows differently:

PARTITION BY A.Incident_Number ORDER BY A.Incident_Number

Try adding the order by some ID after Incident_Number :

PARTITION BY A.Incident_Number ORDER BY A.Incident_Number, A.ID

That can be rewritten as:

PARTITION BY A.Incident_Number ORDER BY A.ID

The technical post webpages of this site follow the CC BY-SA 4.0 protocol. If you need to reprint, please indicate the site URL or the original address.Any question please contact:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM