SQL VIEW - это глобальная логическая таблица, которая может сохраняться или не сохраняться. Но это все еще стол. Следовательно, должен ли VIEW всегда придерживаться первой нормальной формы (1NF)? т.е. нет дублирующихся строк, только скалярные типы, нет упорядочения сверху вниз или слева направо и т. д. Как насчет высших нормальных форм?
Для меня мои приложения «потребляют» результаты сохраненных процедур, мои VIEW «потребляются» запросами SQL, и эти два использования являются взаимоисключающими (т.е. я не запрашиваю наборы результатов хранимых процедур с использованием SQL и моего приложения не содержат код SQL). Я видел, как другие использовали VIEW, чтобы «объединить» несколько значений в столбце в одну строку, обычно в формате с разделителями-запятыми. Для написания предикатов в SQL-запросе для такого столбца требуется ключ, подобный следующему:
',' + concat_col + ',' LIKE '%' + ',' + search_value + ',' + '%'
Так что мне кажется разумным ожидать, что все таблицы, которые можно запрашивать, состоят только из скалярных типов. Думаю ли я, что я слишком «пурист»?