SAS Community, I have two tables that I'm joining together: Table A has 1353 observations Table B has 1352 observations I want to keep all observations in table A and only bring in (left join) observations from Table B where they match. Unfortunately, instead of getting all 1353 obs from Table A (since this is a left join), I'm only getting 1352 obs in my final table. Because Table A is the first table, I should get all obs from Table A and only obs from Table B if they match, correct? My code below: PROC SQL; create table RoleStatusRpt as select a.*, b.'Role Name'n, b.'business friendly description'n, b.rolecompfinal, b.'Role Owner RACF'n, b.appname, b.'SoD conflict'n as SOD_Conflict, b.'SOX Critical (Yes or No)'n, b.'Does this Entitlement/Role grant'n, case when a.role ne b.'Role Name'n then "No Match" end as RoleStatus, case when a.Description ne b.'business friendly description'n then "No Match" end as BFD_Status, case when b.'SOX Critical (Yes or No)'n = "Yes" and a.soxcritical = "false" or b.'SOX Critical (Yes or No)'n = "No" and a.soxcritical = "true" then "No Match" END AS SOXStatus, case when a.rolecomposition ne b.rolecompfinal then "No Match" end as CompositionStatus, case when a.conflict ne b.'SoD conflict'n then "No Match" end as SODConflictStatus, case when a.owner ne b.'Role Owner RACF'n then "No Match" end as RACFOwnerStatus, case when b.'Does this Entitlement/Role grant'n = "Yes" and a.privileged = "false" then "No Match" end as PriviledgeStatus from qa2.sailpoint_role_final as a left join app as b on (a.role = b.'Role Name'n and a.rolecomposition = b.rolecompfinal and a.owner = b.'Role Owner RACF'n) where a.'Profile Application'n = b.appname ; Instead of getting a total of 1353 obs - my final table has 1352 obs. What am I missing here? SAS Log: NOTE: A CASE expression has no ELSE clause. Cases not accounted for by the WHEN clauses will result in a missing value for the CASE expression. NOTE: A CASE expression has no ELSE clause. Cases not accounted for by the WHEN clauses will result in a missing value for the CASE expression. NOTE: A CASE expression has no ELSE clause. Cases not accounted for by the WHEN clauses will result in a missing value for the CASE expression. NOTE: A CASE expression has no ELSE clause. Cases not accounted for by the WHEN clauses will result in a missing value for the CASE expression. NOTE: A CASE expression has no ELSE clause. Cases not accounted for by the WHEN clauses will result in a missing value for the CASE expression. NOTE: A CASE expression has no ELSE clause. Cases not accounted for by the WHEN clauses will result in a missing value for the CASE expression. NOTE: A CASE expression has no ELSE clause. Cases not accounted for by the WHEN clauses will result in a missing value for the CASE expression. NOTE: Table ROLESTATUSRPT created, with 1352 rows and 24 columns.
... View more