When a logistic model is fit usingĀ effects coding in the CLASS statement (the default when the PARAM= option is not specified), a parameter for a CLASS predictor does not compare the effects of two predictor levels. Instead, it compares the effect of the associated predictor level with the average effect of all the levels. As a result, exponentiating a parameter estimate does not result in an odds ratio comparing two predictor levels. Under effects coding, the odds ratio comparing two levels of a CLASS predictor is obtained by exponentiating a linear combination of parameters. In PROC LOGISTIC, the results in the "Odds Ratio Estimates" table use the appropriate linear combinations to provide estimates comparing the indicated levels of the predictor. This is discussed further in SAS Note 23087 and in the LOGISTIC documentation. As a result, when using the default effects coding in PROC LOGISTIC, you may see that the confidence interval for the odds ratio includes 1 when the p-value for the associated parameter is significant, or vice versa. Similar results occur if odds ratios are computed using the proper linear combinations in PROC GENMOD. While this seems contradictory, the two are comparing different quantities as noted above.
However, under reference (also called dummy) coding, the odds ratio for comparing two levels of a predictor not involved in interactions can be obtained by simply exponentiating a parameter. By specifying the PARAM=REF (or PARAM=GLM) option in the CLASS statement, the confidence intervals in the "Odds Ratio Estimates" table from PROC LOGISTIC and the p-values and confidence intervals for the parameter estimates are both comparing two levels of the predictor.