Мне интересно, могу ли я выбрать значение столбца, если столбец существует, и просто выбрать значение null в противном случае. Другими словами, я хотел бы «поднять» оператор select для обработки случая, когда столбец не существует.
SELECT uniqueId
, columnTwo
, /*WHEN columnThree exists THEN columnThree ELSE NULL END*/ AS columnThree
FROM (subQuery) s
Обратите внимание, что я нахожусь в процессе закрепления своей модели данных и дизайна. Я надеюсь исключить эту логику в ближайшие недели, но я действительно хотел бы выйти за рамки этой проблемы, потому что исправление модели данных требует больше времени, чем я хотел бы заняться сейчас.
Также обратите внимание, я хотел бы сделать это в одном запросе. Так что я не ищу ответ, как
сначала проверьте, какие столбцы находятся в вашем подзапросе. Затем измените свой запрос, чтобы соответствующим образом обрабатывать столбцы в вашем подзапросе.
ColumnThree
, когда они существуют, чтобы моя функция работала правильно. Поэтому я буду использовать этот столбец, когда он будет существовать... даже если решение не будет элегантным. - person Steven Wexler   schedule 06.06.2013