ahmed elbarbary

ahmed elbarbary

  • NA
  • 1.6k
  • 254.7k

What must updated null flag updated or conflict flag updated?

Sep 16 2020 7:52 PM

I work on SQL server 2012 .really I don't understand what statement below do updatedand when
when NullFlag updated
and
when conflict flag updated

can you explain to me according to sample below

result of query data details rows without grouping
  1. Masked_ID DocumentID PartID NULLCount  
  2.  29283933 76724 31345983 NULL  
  3.  29283933 76724 31345984 NULL  
  4.  29283933 76724 31345985 NULL  
  5.  29283933 76724 31345986 NULL  
  6.  29283933 NULL NULL 1  
  7.  29283933 NULL NULL 1  
  8.  29283933 76724 31345989 NULL  
  9.  29283933 NULL NULL 1  
  10.  29283933 NULL NULL 1  
  11.  29283933 76724 31345992 NULL 
  12.  
  13.  UPDATE FFFF  
  14.  SET   
  15.  Conflictflag= IIF((NotNULL+NuLLCount)<>RowsCount AND Ex.MaskExceptionID IS NULL ,CONCAT(Conflictflag,'PCN','|'),Conflictflag),  
  16.  NULLflag=IIF((NotNULL+NuLLCount)=RowsCount AND NuLLCount>0 AND NULEX.NULLExceptionID IS NULL,CONCAT(NULLflag,'PCN','|'),NULLflag)  
  17.  FROM   
  18.  (  
  19.  --SELECT Masked_ID,SUM(CNT)/COUNT(DocumentID) AS NotNULL ,SUM(NULLCount)AS NuLLCount  
  20.  SELECT Masked_ID,SUM(CNT)/nullif(COUNT(DocumentID),0) AS NotNULL ,SUM(NULLCount)AS NuLLCount  
  21.   FROM (  
  22.   SELECT FF.Masked_ID,  LC.DocumentID,   
  23.   COUNT(DISTINCT LC.PartID) AS CNT,  
  24.   COUNTCASE WHEN DocumentID IS NULL THEN 1 ELSE NULL END )NULLCount  
  25.   FROM ExtractReports.dbo.MultiMask FF   
  26.   INNER JOIN Parts.Nop_Part ptt WITH(NOLOCK) ON ptt.Masked_ID=ff.Masked_ID   
  27.   LEFT JOIN PCN.DocumentParts LC WITH(NOLOCK) ON ptt.PartID=LC.PartID  
  28.   WHERE FF.PCNs LIKE '%|%'    
  29.   GROUP BY FF.Masked_ID ,LC.DocumentID  
  30.   )DD  
  31.   GROUP BY DD.Masked_ID  
  32.   ) DDFF   
  33.   INNER JOIN  ExtractReports.dbo.MultiMask FFFF ON  DDFF.Masked_ID=FFFF.Masked_ID  
  34.   LEFT JOIN [ConflictReport].dbo.MaskExceptions EX ON EX.MaskID=FFFF.Masked_ID AND EX.FunctionName='PCN'  
  35.   LEFT JOIN [ConflictReport].dbo.NULLExceptions NULEX ON NULEX.MaskID=FFFF.Masked_ID AND NULEX.FunctionName='PCN'  
  36.   WHERE   
  37.   FFFF.PCNs LIKE '%|%'   
on case of data above what must updated Null flag or conflict flag
and why
can you please help me

Answers (1)