logo

Як вказати формат дати під час створення таблиці та заповнити її в SQL?

Щоразу, коли ми працюємо з базами даних, ми виявляємо, що майже кожна таблиця містить стовпець Date. Адже дата даних відіграє важливу роль при їх аналізі. Зберігання дат у певному чи зрозумілому форматі дуже важливо. У цій статті ми дізнаємося, як можна вказати формат дати на SQL Server.

Давайте створимо нашу демонстраційну базу даних і таблицю.



Крок 1: Створіть базу даних

Використовуйте наступну команду, щоб створити базу даних.

Запит:



CREATE DATABASE User_details;>

крок 2: Використовуйте базу даних

Запит:

USE User_details;>

крок 3: Визначення таблиці



У базі даних є наступна таблиця GFG_user.

Запит:

CREATE TABLE GFG_user(Id INT NOT NULL,Dt DATE, Address VARCHAR(100),Dt_FORMATTED AS (convert(varchar(255), dt, 104)), PRIMARY KEY (Id) );>

Вихід:

Тут ми створили стовпець під назвою Dt_FORMATTED, де ми збираємося зберегти нашу відформатовану дату.

Тепер ми бачимо CONVERT() функція. Функція CONVERT() просто перетворює значення будь-якого типу в заданий тип даних.

має наступну java

Синтаксис:

CONVERT ( data_type ( length ) , expression , style )>

Використовуючи цю функцію, ми перетворюємо рядок на дату. На місці аргументу про стиль ми згадали '104' . Це числовий код для визначення формату дати.

Перегляньте цю таблицю, щоб побачити різні коди, які використовуються для різних форматів:

З століттям

(yy)

З століттям

(рррр)

Стандартний

Введення-виведення

0 або 100 (1.2)

Типове значення для дати та часу

і мала датачас

пн дд ррр чч:

miam (або PM)

1 101 НАС.

1 = мм/дд/рр

java elseif

101 = мм/дд/рррр

2 102 ANSI

2 = рр.мм.дд

102 = рррр.мм.дд

3 103 британський/французький

3 = дд/мм/рр

103 = дд/мм/рррр

4 104 Німецький

4 = дд.мм.рр

104 = дд.мм.рррр

одинадцять 111 ЯПОНІЯ

11 = рр/мм/дд

111 = рррр/мм/дд

12 112 ISO

12 = рммдд

112 = ррррммдд

13 або 113 (1.2) Європа за замовчуванням + мілісекунди дд пн рррр гг:мі:сс:ммм (24 години)
131 (2) хіджра (5) дд/мм/рррр гг:міл:сс:ммм

Тут ми згадали лише 10 найбільш використовуваних форматів.

крок 4: Вставте значення

теги html

Наступна команда використовується для вставки значень у таблицю.

Запит:

SET DATEFORMAT dmy; INSERT INTO GFG_user (Id, Dt, Address) VALUES ('1','23.11.2021', 'German');>

У цьому запиті ми використовуємо в ФОРМАТ ДАТИ налаштування.

Синтаксис:

SET DATEFORMAT format>

Коли ми вставляємо рядок, сервер спробує перетворити рядок на дату, перш ніж вставити його в таблицю. Оскільки він не може визначити, чи ставимо ми місяць перед датою чи дату перед місяцем. Наприклад, припустімо, що ви намагаєтеся вставити 06.07.2000. Сервер не може визначити, чи це дата: 6 липня чи 7 червня. Хоча він використовує налаштування локалізації облікового запису користувача, який працює, щоб визначити, що відсутність згадки DATEFORMAT може призвести до помилки, оскільки в більшості випадків обліковий запис, який виконує операцію, налаштовано на формат США, тобто – Місяць День Рік (місяць) .

Помилка виникла тому, що ми хотіли зберегти його як dmy , ні mdy . Однак використання DATEFORMAT допоможе вам позбутися цього.

Вихід:

Ми закінчили з нашою таблицею, тепер давайте перевіримо, чи отримуємо ми бажаний результат чи ні.

крок 5: Переглянути дані таблиці

Запит:

SELECT * FROM GFG_user;>

Вихід:

Ми успішно отримали дату в німецькому форматі в стовпці Dt_FORMATTED.

Інший підхід до вставлення дати в базу даних:

Ми також можемо вставити дату за допомогою функції «to_date» у sql. Можна використовувати такий синтаксис:

TO_DATE([value], [format]);>

Формат дати може бути різних типів, наприклад: «дд-мм-рррр» , «рррр-мм-дд» , «мм-дд-рррр» .

перетворення рядка в ціле число в java

приклад:

CREATE TABLE GFG_INTERN (e_name VARCHAR(20), e_id number, joiningDate date); INSERT INTO GFG_INTERN VALUES ('FirstIntern', 001, to_date('2022-12-12','yyyy-mm-dd')); INSERT INTO GFG_INTERN VALUES ('SecondIntern', 002, to_date('2022-Dec-12','yyyy-mm-dd')); INSERT INTO GFG_INTERN VALUES ('ThirdIntern', 003, to_date('30-12-2022','dd-mm-yyyy')); INSERT INTO GFG_INTERN VALUES ('FourthIntern', 004, to_date('12-31-2022','mm-dd-yyyy')); SELECT * FROM GFG_INTERN;>

команди sql

Вихід:

Вихід