Общие правила использования выражений.
Выражение - сочетание символов и операторов, используемое компонентом SQL Server Database Engine для вычисления одиночного значения данных. Отдельные константы, переменные, столбцы и скалярные функции являются примерами простых выражений. Для соединения двух и более простых выражений в одно сложное используются операторы. Синтаксис { constant | scalar_function | [ table_name. ] column | variable | ( expression ) | ( scalar_subquery ) | { unary_operator } expression | expression { binary_operator } expression } Аргументы:
Замечания: Два выражения можно объединить каким-либо оператором, если оба они содержат данные типов, поддерживаемых оператором, и выполняется хотя бы одно из следующих условий.
· Выражения содержат данные одинаковых типов. · Тип данных с более низким приоритетом может быть неявно преобразован в тип данных с более высоким приоритетом. Если выражения не удовлетворяют этим условиям, функция CAST или CONVERT явным образом преобразует тип данных с более низким приоритетом или в тип данных с более высоким приоритетом, или к промежуточному типу данных, который затем может быть неявно преобразован в тип данных с более высоким приоритетом. CAST и CONVERT будут рассмотрены позднее. Если неявное или явное преобразование не поддерживается, эти два выражения объединить невозможно.
Если оператор связывает два выражения различных типов данных, то по правилам приоритета типов данных определяется, какой тип данных имеет меньший приоритет и будет преобразован в тип данных с большим приоритетом. Если неявное преобразование не поддерживается, возвращается ошибка. Если оба операнда выражения имеют одинаковый тип данных, результат операции будет иметь тот же тип данных. В SQL Server 2005 используется следующий приоритет типов данных (последовательно уменьшается от 1 и далее): 1. определяемые пользователем типы данных (высший приоритет); 2. sql_variant; 3. xml; 4. datetime; 5. smalldatetime; 6. float; 7. real; 8. decimal; 9. money; 10. smallmoney; 11. bigint; 12. int; 13. smallint; 14. tinyint; 15. bit; 16. ntext; 17. text; 18. image; 19. timestamp; 20. uniqueidentifier; 21. nvarchar (включая nvarchar(max)) 22. nchar; 23. varchar (включая varchar(max)) 24. char; 25. varbinary (включая varbinary(max)) 26. binary (низший приоритет)
Читайте также: A) за создание условий неэффективного использования ресурсов Воспользуйтесь поиском по сайту: ©2015 - 2024 megalektsii.ru Все авторские права принадлежат авторам лекционных материалов. Обратная связь с нами...
|