- У SQL існує багато сценаріїв, коли вам потрібно зберігати час у таблицях SQL вашої бази даних.
- Щоб зберігати час у ваших таблицях SQL, вашим першим кроком має бути створення стовпця у вашій таблиці, який здатний зберігати час.
- Якщо ви хочете, щоб час зберігався в стовпці вашої таблиці, вам потрібно створити стовпець із типом даних TIME.
- Тип даних TIME за умовчанням зберігає час у форматі «ГГ:ХХ:СС».
- Використовуючи оператор SELECT у SQL, ви можете отримати час зі стовпця таблиць SQL.
- Поряд із отриманням часу у форматі за замовчуванням, у якому він зберігається, у SQL існує функція TIME_FORMAT (), за допомогою якої час можна отримати у більш зручному для читання форматі.
- Ви можете отримати час у форматі за замовчуванням, у якому він зберігається в таблиці, наприклад, «ГГ:ХХ:СС», або у вас також є можливість отримати певні частини часу, такі як години, хвилини та секунди. вибравши відповідний параметр відповідно до наших вимог і передавши його функції TIME_FORMAT(). Час також можна отримати у 12-годинному та 24-годинному форматі.
- Ми також можемо надрукувати час, а потім AM/PM.
Давайте розглянемо кілька практичних прикладів, щоб краще зрозуміти цю концепцію. Ми будемо використовувати базу даних MySQL для написання всіх запитів.
Щоб створити таблицю в базі даних, ми спочатку виберемо базу даних, у якій ми хочемо створити таблицю.
mysql> USE dbs;
Потім ми напишемо наступний запит для створення таблиці:
mysql> CREATE TABLE items_tbl(ID INT, Item_Name VARCHAR(20), Item_Quantity INT, Item_Price INT, Item_OrderDate DATE, Item_OrderTime TIME);
У наведеному вище запиті стовпець під назвою ItemOrderTime зберігатиме час, оскільки тип даних цього стовпця встановлено як 'TIME'.
Тепер ми напишемо запит для вставки записів у таблицю items_tbl.
модем проти маршрутизатора
mysql> INSERT INTO items_tbl(ID, Item_Name, Item_Quantity, Item_Price, Item_OrderDate, Item_OrderTime) VALUES(1, 'Soap', 5, 200, '2021-07-08', '04:13:52'), (2, 'Toothpaste', 2, 80, '2021-07-10', '18:09:01'), (3, 'Pen', 10, 50, '2021-07-12', '12:00:02'), (4, 'Bottle', 1, 250, '2021-07-13', '15:07:05'), (5, 'Brush', 3, 90, '2021-07-15', '19:18:43'), (6, 'Notebooks', 10, 1000, '2021-07-26', '05:05:05'), (7, 'Handkerchief', 3, 100, '2021-07-28', '10:08:12'), (8, 'Chips Packet', 5, 50, '2021-07-30', '08:16:58'), (9, 'Marker', 2, 30, '2021-08-13', '02:18:32'), (10, 'Scissors', 1, 60, '2021-08-13', '07:17:30');
Ми виконаємо запит SELECT, щоб переконатися, що всі записи успішно вставлено в таблицю items_tbl.
mysql> SELECT *FROM items_tbl;
ID | Назва виробу | Item_Quantity | Item_Price | Item_OrderDate | Item_OrderTime |
---|---|---|---|---|---|
1 | Мило | 5 | 200 | 2021-07-08 | 04:13:52 |
2 | Зубна паста | 2 | 80 | 2021-07-10 | 18:09:01 |
3 | Перо | 10 | п'ятдесят | 2021-07-12 | 12:00:02 |
4 | Пляшка | 1 | 250 | 2021-07-13 | 15:07:05 |
5 | Кисть | 3 | 90 | 2021-07-15 | 19:18:43 |
6 | зошити | 10 | 1000 | 2021-07-26 | 05:05:05 |
7 | носова хустка | 3 | 100 | 2021-07-28 | 10:08:12 |
8 | Пакет чіпсів | 5 | п'ятдесят | 2021-07-30 | 08:16:58 |
9 | Маркер | 2 | 30 | 2021-08-13 | 02:18:32 |
10 | Ножиці | 1 | 60 | 2021-08-13 | 07:17:30 |
Наведені вище результати запиту показують, що час отримується у форматі за замовчуванням, у якому він зберігається, тобто «ГГ:ХХ:СС».
приклад 1:
Напишіть запит, щоб отримати всі значення з item_tbl і час замовлення товарів у 12-годинному форматі, а також AM/PM, щоб отримати значення часу в більш зручному для читання форматі.
Запит:
як вибрати стовпці з різних таблиць у sql
mysql> SELECT ID, Item_Name, Item_Quantity, Item_Price, Item_OrderDate, TIME_FORMAT (Item_OrderTime, '%r') AS Formatted_Time FROM items_tbl;
Тут функція TIME_FORMAT() застосована до Item_OrderTime з параметром «%r», щоб надрукувати час у 12-годинному форматі, а потім AM/PM.
На виході ви отримаєте наступну таблицю:
ID | Назва виробу | Item_Quantity | Item_Price | Item_OrderDate | Item_OrderTime |
---|---|---|---|---|---|
1 | Мило | 5 | 200 | 2021-07-08 | 04:13:52 ранку |
2 | Зубна паста | 2 | 80 | 2021-07-10 | 18:09:01 |
3 | Перо | 10 | п'ятдесят | 2021-07-12 | 12:00:02 |
4 | Пляшка | 1 | 250 | 2021-07-13 | 15:07:05 |
5 | Кисть | 3 | 90 | 2021-07-15 | 19:18:43 |
6 | зошити | 10 | 1000 | 2021-07-26 | 05:05:05 ранку |
7 | носова хустка | 3 | 100 | 2021-07-28 | 10:08:12 ранку |
8 | Пакет чіпсів | 5 | п'ятдесят | 2021-07-30 | 08:16:58 ранку |
9 | Маркер | 2 | 30 | 2021-08-13 | 02:18:32 ранку |
10 | Ножиці | 1 | 60 | 2021-08-13 | 07:17:30 ранку |
приклад 2:
Напишіть запит, щоб отримати всі значення з item_tbl і час замовлення товарів у 12-годинному форматі, а також AM/PM, щоб отримати значення часу в більш зручному для читання форматі.
Запит:
mysql> SELECT ID, Item_Name, Item_Quantity, Item_Price, Item_OrderDate, TIME_FORMAT (Item_OrderTime, '%T %p') AS Formatted_Time FROM items_tbl;
Тут функція TIME_FORMAT () застосована до Item_OrderTime з параметром '%T %p'. «%T» надрукує час у 24-годинному форматі, а «%p» додасть AM/PM до 24-годинного формату часу.
На виході ви отримаєте наступну таблицю:
ID | Назва виробу | Item_Quantity | Item_Price | Item_OrderDate | Item_OrderTime |
---|---|---|---|---|---|
1 | Мило | 5 | 200 | 2021-07-08 | 04:13:52 ранку |
2 | Зубна паста | 2 | 80 | 2021-07-10 | 18:09:01 вечора |
3 | Перо | 10 | п'ятдесят | 2021-07-12 | 12:00:02 |
4 | Пляшка | 1 | 250 | 2021-07-13 | 15:07:05 вечора |
5 | Кисть | 3 | 90 | 2021-07-15 | 19:18:43 вечора |
6 | зошити | 10 | 1000 | 2021-07-26 | 05:05:05 ранку |
7 | носова хустка | 3 | 100 | 2021-07-28 | 10:08:12 ранку |
8 | Пакет чіпсів | 5 | п'ятдесят | 2021-07-30 | 08:16:58 ранку |
9 | Маркер | 2 | 30 | 2021-08-13 | 02:18:32 ранку |
10 | Ножиці | 1 | 60 | 2021-08-13 | 07:17:30 ранку |
приклад 3:
Напишіть запит, щоб отримати всі значення з item_tbl і лише годину замовлення товарів із усього часу замовлення в 24-годинному форматі.
Запит:
список методів java
mysql> SELECT ID, Item_Name, Item_Quantity, Item_Price, Item_OrderDate, TIME_FORMAT (Item_OrderTime, '%H') AS Item_OrderHour FROM items_tbl;
Тут функція TIME_FORMAT () застосована до Item_OrderTime з параметром «%H», щоб надрукувати точну годину, коли товар замовлено. Велика H означає, що година буде надрукована у 24-годинному форматі.
На виході ви отримаєте наступну таблицю:
ID | Назва виробу | Item_Quantity | Item_Price | Item_OrderDate | Item_OrderHour |
---|---|---|---|---|---|
1 | Мило | 5 | 200 | 2021-07-08 | 04 |
2 | Зубна паста | 2 | 80 | 2021-07-10 | 18 |
3 | Перо | 10 | п'ятдесят | 2021-07-12 | 12 |
4 | Пляшка | 1 | 250 | 2021-07-13 | п'ятнадцять |
5 | Кисть | 3 | 90 | 2021-07-15 | 19 |
6 | зошити | 10 | 1000 | 2021-07-26 | 05 |
7 | носова хустка | 3 | 100 | 2021-07-28 | 10 |
8 | Пакет чіпсів | 5 | п'ятдесят | 2021-07-30 | 08 |
9 | Маркер | 2 | 30 | 2021-08-13 | 02 |
10 | Ножиці | 1 | 60 | 2021-08-13 | 07 |
Приклад 4:
Напишіть запит, щоб отримати всі значення з item_tbl і лише годину замовлення товарів із усього часу замовлення в 12-годинному форматі.
Запит:
mysql> SELECT ID, Item_Name, Item_Quantity, Item_Price, Item_OrderDate, TIME_FORMAT (Item_OrderTime, '%h') AS Item_OrderHour FROM items_tbl;
Тут функція TIME_FORMAT () застосована до Item_OrderTime з параметром «%h», щоб надрукувати точну годину, коли товар замовлено. Маленьке «h» означає, що годину буде надруковано у 12-годинному форматі.
На виході ви отримаєте наступну таблицю:
команда arp
ID | Назва виробу | Item_Quantity | Item_Price | Item_OrderDate | Item_OrderHour |
---|---|---|---|---|---|
1 | Мило | 5 | 200 | 2021-07-08 | 04 |
2 | Зубна паста | 2 | 80 | 2021-07-10 | 6 |
3 | Перо | 10 | п'ятдесят | 2021-07-12 | 12 |
4 | Пляшка | 1 | 250 | 2021-07-13 | 03 |
5 | Кисть | 3 | 90 | 2021-07-15 | 07 |
6 | зошити | 10 | 1000 | 2021-07-26 | 05 |
7 | носова хустка | 3 | 100 | 2021-07-28 | 10 |
8 | Пакет чіпсів | 5 | п'ятдесят | 2021-07-30 | 08 |
9 | Маркер | 2 | 30 | 2021-08-13 | 02 |
10 | Ножиці | 1 | 60 | 2021-08-13 | 07 |
Приклад 5:
Напишіть запит, щоб отримати всі значення з item_tbl і лише хвилину, коли товар було замовлено з усього часу замовлення.
Запит:
mysql> SELECT ID, Item_Name, Item_Quantity, Item_Price, Item_OrderDate, TIME_FORMAT (Item_OrderTime, '%i') AS Item_OrderMinute FROM items_tbl;
Тут функція TIME_FORMAT () застосована до Item_OrderTime з параметром «%i» для друку конкретної хвилини, коли товар замовлено. Маленьке «i» означає, що буде надруковано хвилину з усього «Item_OrderTime».
На виході ви отримаєте наступну таблицю:
ID | Назва виробу | Item_Quantity | Item_Price | Item_OrderDate | Item_OrderMinute |
---|---|---|---|---|---|
1 | Мило | 5 | 200 | 2021-07-08 | 13 |
2 | Зубна паста | 2 | 80 | 2021-07-10 | 09 |
3 | Перо | 10 | п'ятдесят | 2021-07-12 | 00 |
4 | Пляшка | 1 | 250 | 2021-07-13 | 07 |
5 | Кисть | 3 | 90 | 2021-07-15 | 18 |
6 | зошити | 10 | 1000 | 2021-07-26 | 05 |
7 | носова хустка | 3 | 100 | 2021-07-28 | 08 |
8 | Пакет чіпсів | 5 | п'ятдесят | 2021-07-30 | 16 |
9 | Маркер | 2 | 30 | 2021-08-13 | 18 |
10 | Ножиці | 1 | 60 | 2021-08-13 | 17 |
Приклад 6:
Напишіть запит, щоб отримати всі значення з item_tbl і лише секунди, за які товар замовляється, з усього часу замовлення.
mysql> SELECT ID, Item_Name, Item_Quantity, Item_Price, Item_OrderDate, TIME_FORMAT (Item_OrderTime, '%S') AS Item_OrderSeconds FROM items_tbl;
Тут функція TIME_FORMAT () застосована до Item_OrderTime з параметром «%S», щоб надрукувати конкретні секунди, за які товар було замовлено. Велика 'S' означає, що буде надруковано хвилину з усього 'Item_OrderTime'.
інакше, якщо bash
На виході ви отримаєте наступну таблицю:
ID | Назва виробу | Item_Quantity | Item_Price | Item_OrderDate | Item_Order_Seconds |
---|---|---|---|---|---|
1 | Мило | 5 | 200 | 2021-07-08 | 52 |
2 | Зубна паста | 2 | 80 | 2021-07-10 | 01 |
3 | Перо | 10 | п'ятдесят | 2021-07-12 | 02 |
4 | Пляшка | 1 | 250 | 2021-07-13 | 05 |
5 | Кисть | 3 | 90 | 2021-07-15 | 43 |
6 | зошити | 10 | 1000 | 2021-07-26 | 05 |
7 | носова хустка | 3 | 100 | 2021-07-28 | 12 |
8 | Пакет чіпсів | 5 | п'ятдесят | 2021-07-30 | 58 |
9 | Маркер | 2 | 30 | 2021-08-13 | 32 |
10 | Ножиці | 1 | 60 | 2021-08-13 | двадцять |