" /> " /> JoomThumbnail
Головна SQL Dates

MySQL Date Functions

У наступній таблиці наведені найбільш важливі функцій для роботи з датами в MySQL:

ОпціїОпис
NOW () Повертає поточну дату і час.
CURDATE () Повертає поточну дату.
CURTIME () Повертаємо поточний час.
DATE () Складається з двох частин дати і часу.
EXTRACT () Повертає одне значення дати / часу.
DATE_ADD () Додає до вибірки вказане число днів / міну / годин і т.д.
DATE_SUB () Вичитуємо вказаний інтервал від дати.
DATEDIFF () Повертає значення часу між двома датами.
DATE_FORMAT () Функція для різного виведення інформації про час.


SQL Server Date Functions

У наступній таблиці наведені найбільш важливі функцій для роботи з датами в SQL Server:

ОпціїОпис
GETDATE () Повертає поточну дату і час.
DATEPART () Повертає дату / час.
DATEADD () Функція, яка дозволяє додавати певне значення для дати.
DATEDIFF () Обчислюємо різницю між датами.
CONVERT () Функція для різного виведення інформації про час.


Типи даних в SQL

MySQL надає наступні формати даних для зберігання дати / часу в базі даних:

  • DATE - format YYYY-MM-DD
  • DATETIME - format: YYYY-MM-DD HH: MM: SS
  • TIMESTAMP - format: YYYY-MM-DD HH: MM: SS
  • YEAR - format YYYY or YY

SQL Server надає наступні формати даних для зберігання дати / часу в базі даних:

  • DATE - format YYYY-MM-DD
  • DATETIME - format: YYYY-MM-DD HH: MM: SS
  • SMALLDATETIME - format: YYYY-MM-DD HH: MM: SS
  • TIMESTAMP - format: a unique number

Для огляду всіх наявних типів даних, перейдіть на сторінку Типи даних.


Робота з Датами в SQL

Є наступна таблиця "Orders":

OrderIdProductNameOrderDate
1 Geitost 2008-11-11
2 Camembert Pierrot 2008-11-09
3 Mozzarella di Giovanni 2008-11-11
4 Mascarpone Fabioli 2008-10-29

Тепер ми хочемо, вибрати всі записи, де OrderDate дорівнює "2008-11-11".

Для цього використовуємо такий запит:

1
SELECT * FROM Orders WHERE OrderDate='2008-11-11 '

OrderIdProductNameOrderDate
1 Geitost 2008-11-11
3 Mozzarella di Giovanni 2008-11-11

Тепер припустимо, що таблиця "Orders" виглядає наступним чином:

OrderIdProductNameOrderDate
1 Geitost 2008-11-11 13:23:44
2 Camembert Pierrot 2008-11-09 15:45:21
3 Mozzarella di Giovanni 2008-11-11 11:12:01
4 Mascarpone Fabioli 2008-10-29 14:56:59

Якщо ми використовуємо той же SELECT запит, то:

1
SELECT * FROM Orders WHERE OrderDate='2008-11-11 '

ми не отримаємо результат! Це пояснюється тим, що запит шукає тільки по датам, але не враховує час.

Коментарі

 
+1 #1 Сергей 2012-03-26 10:16
Цитувати
 
 
0 #2 Сергей 2012-03-27 18:58






< моя_Дата + 1 день. Ключевое слово меньше (а не меньше равно), чтобы не попали даты следующего дня с нулевым временем. Но это выглядит тоже не очень.

Цитувати
 

Авторизація

Nice Ajax Poll

Яке з моїх розширень найкраще?

Статистика

Реклама