Описание convert sql: Функции CAST и CONVERT (Transact-SQL) — SQL Server

MSSQL — CONVERT Datetime to String

  • 8 ноября 2018
CONVERT(VARCHAR, GETDATE(), 121)

В следующей таблице два столбца слева представляют значения аргумента style для преобразования данных типа datetime или smalldatetime в символьные данные. Чтобы получить четырехзначное значение года, включающее столетие (гггг), добавьте 100 к значению аргумента style.

Без столетия (гг)Со столетием (гггг)СтандартныйВвод-вывод**

0 или 100 (*)

По умолчанию

мес дд гггг чч:ми AM (или PM)

1

101

США

мм/дд/гггг

2

102

ANSI

гг. мм.дд

3

103

Британский/французский

дд/мм/гг

4

104

Немецкий

дд.мм.гг

5

105

Итальянский

дд-мм-гг

6

106

дд мес гг

7

107

Мес дд, гг

8

108

чч:мм:сс

9 или 109 (*)

По умолчанию + миллисекунды

мес дд гггг чч:ми:сс:мсек AM (или PM)

10

110

США

мм-дд-гг

11

111

Японский

гг/мм/дд

12

112

ISO

Ггммдд

13 или 113 (*)

Европейский по умолчанию + миллисекунды

дд мес гггг чч:мм:сс:мсек (24-часовой формат)

14

114

чч:ми:сс:мсек (24-часовой формат)

20 или 120 (*)

Канонический формат ODBC

гггг-мм-дд чч:ми:сс (24-часовой формат)

21 или 121 (*)

Канонический формат ODBC (с миллисекундами)

гггг-мм-дд чч:ми:сс. мсек (24-часовой формат)

126(***)

ISO8601

гггг-мм-ддTчч:мм:сс.мсек (без пробелов)

130*

Хиджра****

дд мес гггг чч:мм:сс:мсек AM

131*

Хиджра****

дд/мм/гг чч:ми:сс:мсек AM

 

* Значения по умолчанию (style 0 или 100, 9 или 109, 13 или 113, 20 или 120 и 21 или 121) всегда возвращают столетие (гггг).

** Ввод при преобразовании в формат datetime. Вывод при преобразовании в символьные данные.

*** Для использования в XML. Для преобразования из типа данных datetime или smalldatetime в данные character формат вывода будет таким, как описано в таблице. При преобразовании из типа данных float, money или smallmoney в данные character формат вывода будет эквивалентен значению аргумента style 2. При преобразовании из типа данных real в данные character формат вывода будет эквивалентен значению аргумента style 1.

**** Хиджра — календарная система с несколькими вариантами, из которых в SQL Server Compact 3.5 использует кувейтский алгоритм.

Теги

  • sql

💰 Поддержать проект

Похожие материалы

Олег
  • 31 января 2018
  • Подробнее о Настройка зеркалирования в Microsoft SQL Server 2014

Зеркалирование или mirroring в MS SQL Server 2014 всё ещё есть. Это очень полезное решение для повышения доступности базы данных. Если ваш сервер упал, посыпались винты, сгорел ЦОД, то возможность быстро переключиться на резервный сервер, не занимаясь восстановлением сервера или БД из бэкапа, экономит кучу времени, денег и нервов. Однако, не следует рассматривать зеркалирование как замену резервному копированию, так как оно не спасает от случайного удаления данных.

Теги

  • sql
  • Windows
Олег
  • 8 февраля 2018
  • Подробнее о Maintenance Plans — резервное копирование и обслуживание баз данных в Microsoft SQL Server 2014

Microsoft SQL Server 2014 позволяет воспользоваться встроенными средствами резервного копирования и обслуживания баз данных. В данном случае план предназначен для обслуживания баз данных исключительно с моделью восстановления FULL. Если вы используете другую модель восстановления, то нужно воспользоваться другим планом, потому что резервное копирование лога транзакций вам может не потребоваться.

Теги

  • Windows
  • sql
  • 1C
  • special
Олег
  • 21 февраля 2018
  • Подробнее о Клонирование Microsoft SQL Server 2014 на новую виртуальную машину

Привет всем любителям системного администрирования. Появилась новая задача — создать новый SQL Server 2014 по аналогии с уже существующим таким же сервером на новой виртуальной машине. Виртуалка в домене. Будем решать задачу в несколько этапов. Склонируем виртуальную машину. Введём её в домен под другим именем. Переименуем SQL сервер. Почистим SQL сервер.

Теги

  • Windows
  • sql
  • VMware
  • Виртуализация

Чтиво на ночь

Справочник SQL — Ключевые слова

Ключевые словаОписание
ADDДобавляет столбец в существующую таблицу
ADD CONSTRAINTДобавляет ограничение после того, как таблица уже создана
ALTERДобавляет, удаляет или изменяет столбцы в таблице, а также изменяет данные
тип столбца в таблице
ALTER COLUMNИзменяет тип данных столбца в таблице
ALTER TABLEДобавляет, удаляет или изменяет столбцы в таблице
ALLВозвращает true, если все значения подзапроса соответствуют
состояние
ANDВключает только строки, где оба условия истинны
ANYВозвращает true, если какое-либо из значений подзапроса соответствует состоянию
ASПереименовывает столбец или таблицу с помощью псевдонима
ASCСортировка результирующего набора в порядке возрастания
BACKUP DATABASEСоздает резервную копию существующей базы данных
BETWEENВыбор значений в заданном диапазоне
CASEСоздает различные выходные данные в зависимости от условий
CHECKОграничение, ограничивающее значение, которое может быть помещено в колонка
COLUMNИзменяет тип данных столбца или удаляет столбец в таблице
CONSTRAINTДобавляет или удаляет ограничение
CREATEСоздает базу данных, индекс, представление, таблицу или процедуру
CREATE DATABASEСоздает новую базу данных SQL
CREATE INDEXСоздает индекс в таблице (позволяет дублировать значения)
CREATE OR REPLACE VIEWОбновление представления
CREATE TABLEСоздает новую таблицу в базе данных
CREATE PROCEDUREСоздает хранимую процедуру
CREATE UNIQUE INDEXСоздает уникальный индекс в таблице (без повторяющихся значений)
CREATE VIEWСоздает представление на основе результирующего набора инструкции SELECT
DATABASEСоздает или удаляет базу данных SQL
DEFAULTОграничение, предоставляющее значение по умолчанию для столбца
DELETEУдаляет строки из таблицы
DESCСортировка результирующего набора в порядке убывания
DISTINCTВыбирает только отдельные (разные) значения
DROPУдаляет столбец, ограничение, базу данных, индекс, таблицу или представление
DROP COLUMNУдаляет столбец в таблице
DROP CONSTRAINTУдаляет UNIQUE, PRIMARY KEY, FOREIGN KEY, или ограничение CHECK
DROP DATABASEУдаляет существующую базу данных SQL
DROP DEFAULTУдаляет ограничение по умолчанию
DROP INDEXУдаление индекса в таблице
DROP TABLEУдаляет существующую таблицу в базе данных
DROP VIEWУдаление представления
EXECВыполняет хранимую процедуру
EXISTSТесты на наличие любой записи в подзапросе
FOREIGN KEYОграничение, которое является ключом, используемым для связывания двух таблиц вместе
FROMУказывает, из какой таблицы следует выбрать или удалить данные
FULL OUTER JOINВозвращает все строки при наличии совпадения в левой или правой таблице
GROUP BYГруппирует результирующий набор (используется с агрегатными функциями: COUNT, MAX, MIN, SUM, AVG)
HAVINGИспользуется вместо WHERE с агрегатными функциями
INПозволяет указать несколько значений в предложении WHERE
INDEXСоздает или удаляет индекс в таблице
INNER JOINВозвращает строки, имеющие совпадающие значения в обеих таблицах
INSERT INTOВставка новых строк в таблицу
INSERT INTO SELECTКопирует данные из одной таблицы в другую
IS NULLТесты для пустых значений
IS NOT NULLТесты для непустых значений
JOINДля объединения таблиц
LEFT JOINВозвращает все строки из левой таблицы и соответствующие строки из правой таблицы
LIKEПоиск указанного шаблона в столбце
LIMITЗадает количество записей, возвращаемых в результирующем наборе
NOTВключает только строки, в которых условие не является истинным
NOT NULLОграничение, которое заставляет столбец не принимать нулевые значения
ORВключает строки, в которых выполняется любое из условий
ORDER BYСортировка результирующего набора в порядке возрастания или убывания
OUTER JOINВозвращает все строки при наличии совпадения в левой или правой таблице
PRIMARY KEYОграничение, которое однозначно идентифицирует каждую запись в таблице базы данных
PROCEDUREХранимая процедура
RIGHT JOINВозвращает все строки из правой таблицы и соответствующие строки из левой таблицы
ROWNUMЗадает количество записей, возвращаемых в результирующем наборе
SELECTВыбор данных из базы данных
SELECT DISTINCTВыбирает только отдельные (разные) значения
SELECT INTOКопирует данные из одной таблицы в новую таблицу
SELECT TOPЗадает количество записей, возвращаемых в результирующем наборе
SETУказывает, какие столбцы и значения должны быть обновлены в таблице
TABLEСоздает таблицу, добавляет, удаляет или изменяет столбцы в таблице, а также удаляет таблицу или данные внутри таблицы
TOPЗадает количество записей, возвращаемых в результирующем наборе
TRUNCATE TABLEУдаляет данные внутри таблицы, но не саму таблицу
UNIONОбъединяет результирующий набор из двух или более операторов SELECT (только отдельные значения)
UNION ALLОбъединяет результирующий набор из двух или более операторов SELECT (позволяет дублировать значения)
UNIQUEОграничение, обеспечивающее уникальность всех значений в столбце
UPDATEОбновление существующих строк в таблице
VALUESЗадает значения инструкции INSERT INTO
VIEWСоздает, обновляет или удаляет представление
WHEREФильтрует результирующий набор для включения только тех записей, которые удовлетворяют заданному условию

TRY_CAST (Transact-SQL) — SQL Server

Редактировать

Твиттер

LinkedIn

Фейсбук

Электронное письмо

  • Статья
  • 2 минуты на чтение

Применимо к:
SQL Server (все поддерживаемые версии)
База данных SQL Azure
Управляемый экземпляр Azure SQL
Аналитика синапсов Azure
Система аналитической платформы (PDW)

Возвращает значение, приведенное к указанному типу данных, если преобразование прошло успешно; в противном случае возвращает ноль.

Соглашения о синтаксисе Transact-SQL

Синтаксис

 TRY_CAST (выражение AS тип_данных [ ( длина ) ] )
 

Примечание

Чтобы просмотреть синтаксис Transact-SQL для SQL Server 2014 и более ранних версий, см. документацию по предыдущим версиям.

Аргументы

выражение
Приводимое значение. Любое допустимое выражение.

тип_данных
Тип данных, в который нужно преобразовать выражение .

длина
Необязательное целое число, указывающее длину целевого типа данных.

Диапазон допустимых значений определяется значением data_type .

Типы возвращаемых значений

Возвращает значение, приведенное к указанному типу данных, если преобразование прошло успешно; в противном случае возвращает ноль.

TRY_CAST принимает переданное ему значение и пытается преобразовать его в указанное тип_данных . Если приведение выполняется успешно, TRY_CAST возвращает значение как указанное data_type ; в случае ошибки возвращается null. Однако если вы запросите преобразование, которое явно не разрешено, то TRY_CAST завершится ошибкой.

TRY_CAST не является новым зарезервированным ключевым словом и доступно для всех уровней совместимости. TRY_CAST имеет ту же семантику, что и TRY_CONVERT при подключении к удаленным серверам.

Примеры

A. TRY_CAST возвращает значение null

В следующем примере показано, что TRY_CAST возвращает значение null при сбое приведения.

 ВЫБОР
    СЛУЧАЙ, КОГДА TRY_CAST('test' AS float) IS NULL
    ТОГДА "Приведение не удалось"
    ELSE "Успех трансляции"
КОНЕЦ КАК Результат;
ИДТИ
 

Вот набор результатов.

 Результат
------------
Приведение не удалось
  
(затронуты 1 ряд)
 

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

 УСТАНОВИТЬ ФОРМАТ ДАТЫ dmy;
SELECT TRY_CAST('31.12.2010' AS datetime2) AS Result;
ИДТИ
 

Вот набор результатов.

 Результат
----------------------
НОЛЬ
  
(затронуты 1 ряд)
 

B. TRY_CAST завершается с ошибкой

В следующем примере показано, что TRY_CAST возвращает ошибку, когда приведение явно запрещено.

 SELECT TRY_CAST(4 AS xml) AS Result;
ИДТИ
 

Результатом этого оператора является ошибка, так как целое число не может быть преобразовано в тип данных xml.

 Явное преобразование типа данных int в xml не допускается.
 

C. TRY_CAST завершается успешно

Этот пример демонстрирует, что выражение должно быть в ожидаемом формате.

 УСТАНОВИТЬ ФОРМАТ ДАТЫ mdy;
SELECT TRY_CAST('31.12.2010' AS datetime2) AS Result;
ИДТИ
 

Вот набор результатов.

 Результат
----------------------------------
2010-12-31 00:00:00.0000000
  
(затронуты 1 ряд)
 

См. также

TRY_CONVERT (Transact-SQL)
ПРИВЕСТИ и ПРЕОБРАЗОВАТЬ (Transact-SQL)

Как преобразовать структуру таблицы базы данных в файл XML на сервере sql?

спросил

Изменено
10 лет, 2 месяца назад

Просмотрено
10 тысяч раз

Как преобразовать схему таблицы в формат XML? Формат приведен ниже.

 <Таблицы>
  <Таблица>
    курсы
    <Схема>dbo
    <Столбцы>
      <Столбец>
        <Имя>идентификатор
        целое
     
     <Столбец>
       <Имя>имя_страницы
       nvarchar
       <Длина>50
     
    
  
  <Таблица>
    course_details
    <Схема>dbo
    . ....
    .....
  

 

Я могу создать структуру для столбцов и таблиц отдельно. Но я хочу объединить оба. Как это возможно?
Мои сценарии SQL

Для таблиц:

 SELECT
Отчетливый
TABLE_NAME как имя,
TABLE_SCHEMA как [Схема]
ИЗ INFORMATION_SCHEMA.TABLES
ГДЕ TABLE_SCHEMA='dbo'
ЗАКАЗАТЬ ПО TABLE_NAME ASC
Для XML PATH ("Таблица")
Корень('Таблицы')
 

Для столбцов:

 ВЫБЕРИТЕ
Column_Name как имя,
DATA_TYPE как тип данных,
CHARACTER_MAXIMUM_LENGTH как [Длина]
ИЗ INFORMATION_SCHEMA.COLUMNS
Для XML PATH («Столбец»)
Корень('Столбцы')
 
  • sql-server
  • sql-server-2008
  • tsql

Тот же запрос, но выглядит лучше:

 SELECT TABLE_NAME as '@Name',
(
ВЫБЕРИТЕ Column_Name как '@Name',
DATA_TYPE как '@DataType',
случай data_type
когда 'nvarchar'
затем CHARACTER_MAXIMUM_LENGTH
когда 'варчар'
затем CHARACTER_MAXIMUM_LENGTH
иначе ноль
заканчиваться как '@Length',
IS_NULLABLE AS '@IsNullable'
ИЗ INFORMATION_SCHEMA.