Описание 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.