Thank you very much, Peter, for the suggestion. Unfortunately, your solution seems to share the same problem other solutions have had: pulling the Campus field value isn't being taken into account when the query is resolved. Instead of getting programs for what was selected in the Campus field, I'm getting everything that has a category assigned to it.
I know the rest of the query works fine. For example, if I replace what you've contributed with the following...
ELECT'' as name1, 'Select Program' as name
UNION ALL
SELECT RTRIM(LTRIM(DocumentTags)) AS name1,RTRIM(LTRIM(DocumentName)) AS name
FROM cms_category c (NOLOCK)
JOIN cms_documentcategory dc(NOLOCK) on c.categoryid = dc.categoryid
JOIN View_CMS_Tree_Joined vw on dc.DocumentID = vw.DocumentID
WHERE CategoryDisplayName like 'Chicago'
... then everything works perfectly. However, I know through various tests that '%{%fields.Campus.Value|(identity)GlobalAdministrator%}%' is pulling the correct information from the Campus dropdown - the query just doesn't seem to care. After all of these attempts, I'm back to my original way of thinking: that the Campus value is being pulled too late in the process for the sql query to take it into account. I don't know what else would explain it, and I can't seem to find a solution for it.