AS SELECT DISTINCT 
                      pa.ProgramID, pa.ProgramName, dbo.Paths.PathStr, dbo.OccurrencesStmt.StartRow, CASE WHEN dbo.Paths.PathID = Occurrences.PathID THEN 0 ELSE - 1 END AS IsCopy
FROM         dbo.IfInfo INNER JOIN
                      dbo.OccurrencesStmt ON dbo.IfInfo.OccurId = dbo.OccurrencesStmt.OccurID INNER JOIN
                      dbo.Paths ON dbo.OccurrencesStmt.PathID = dbo.Paths.PathID INNER JOIN
                      (SELECT Programs.ProgramID, ProgramAliases.AliasName AS ProgramName, Programs.ProgramTypeID, Programs.OccurID 
							FROM dbo.Programs INNER JOIN ProgramAliases ON ProgramAliases.ProgramId = Programs.ProgramID and ProgramAliases.AliasType = 0)pa 
							ON dbo.OccurrencesStmt.ProgID = pa.ProgramID INNER JOIN
                      dbo.Occurrences ON pa.OccurID = dbo.Occurrences.OccurID
WHERE     ((dbo.IfInfo.IfColumn <> dbo.IfInfo.ThenColumn) OR
                      (dbo.IfInfo.IfColumn <> dbo.IfInfo.ElseColumn) )
           AND (pa.ProgramTypeID = 1)
ORDER BY pa.ProgramName, dbo.Paths.PathStr, dbo.OccurrencesStmt.StartRow                        