Функция приведения SQL Server

Funkcia Privedenia Sql Server



«Неважно, новичок вы или опытный разработчик, вы столкнетесь с преобразованием типов. Преобразование типа относится к процессу преобразования значения или выражения из одного типа данных в другой совместимый тип данных.

В этом посте мы обсудим использование функции cast() в SQL Server для преобразования значения или выражения из одного типа в другой».







Функция приведения SQL Server

В следующем фрагменте показан синтаксис функции cast().



В РОЛЯХ ( выражение В КАЧЕСТВЕ тип данных [ ( ДЛИНА ) ] )

Функция принимает следующие параметры:



  1. выражение – любое допустимое выражение.
  2. data_type — устанавливает целевой тип данных.
  3. длина — необязательное целочисленное значение, определяемое как длина целевого типа данных (только для поддерживаемых типов).

Затем функция возвращает выражение, преобразованное в целевой тип данных.





Давайте используем примеры, чтобы проиллюстрировать, как мы можем использовать функцию приведения.

Использование функции приведения для преобразования строки в целое число

В следующем примере функция приведения используется для преобразования входной строки в целочисленное значение.



ВЫБРАТЬ
В РОЛЯХ ( «100» В КАЧЕСТВЕ INT ) В КАЧЕСТВЕ выход_значение;

Полученный результат:

выходное_значение |
------------+
100 |

Использование функции приведения для преобразования десятичного числа в целое число

Во втором примере ниже функция приведения используется для преобразования десятичного типа в целочисленный.

ВЫБРАТЬ
В РОЛЯХ ( 3.14159 В КАЧЕСТВЕ INT ) В КАЧЕСТВЕ выход_значение;

Функция приведения округляет входное десятичное число до ближайшего целого числа, как показано ниже:

выходное_значение |
------------+
3 |

Использование функции приведения для преобразования строки в дату и время

Мы также можем использовать функцию приведения для преобразования заданной входной строки в значение даты и времени. Пример иллюстрации показан ниже:

ВЫБРАТЬ
В РОЛЯХ ( '2022-10-10' В КАЧЕСТВЕ дата и время ) В КАЧЕСТВЕ выход_значение;

Результирующий вывод:

выходное_значение |
-----------------------+
2022 - 10 - 10 00:00: 00 000 |

Использование функции приведения к столбцу таблицы

Мы также можем применить функцию приведения к определенному столбцу и преобразовать строки из этого столбца в другой тип данных.

Например, предположим, что у нас есть таблица:

Мы можем преобразовать значения столбца size_on_disk в целые числа, как показано ниже:

ВЫБРАТЬ
имя сервера ,
В РОЛЯХ ( Размер на диске В КАЧЕСТВЕ INT ) В КАЧЕСТВЕ appx_size
ИЗ
записи;

Результирующая таблица выглядит так:

Как мы видим, результирующий вывод выражается целыми значениями (округленными).

ПРИМЕЧАНИЕ. Следует помнить, что существуют различные типы преобразования.

  1. Неявное преобразование — механизм SQL Server автоматически применяет операцию преобразования для наилучшего соответствия запрошенной операции.
  2. Явное преобразование — выполняется пользователем вручную путем вызова функций преобразования, таких как cast() и convert().

На следующей диаграмме показаны типы, которые вы можете преобразовать, применяемый тип преобразования и многое другое.

Источник: Майкрософт

Обнуление

Спасибо за чтение этого руководства. Надеемся, вы узнали что-то новое из этого руководства.