Latest web development tutorials

SQL Server и MySQL в функции Date

SQL Дата (даты)

примечание Когда мы имеем дело с датой, это, вероятно, самая сложная задача для того, чтобы вставить формат даты соответствует формату даты в столбце базы данных.

До тех пор пока данные содержат только часть даты, ваши запросы пойдет не так. Тем не менее, если время компонент участвует, ситуация немного сложнее.

Прежде чем обсуждать сложность даты запроса, давайте посмотрим на наиболее важных встроенных функций обработки даты.


Функции даты MySQL

В следующей таблице перечислены наиболее важные встроенные функции MySQL даты:

函数 描述
NOW() 返回当前的日期和时间
CURDATE() 返回当前的日期
CURTIME() 返回当前的时间
DATE() 提取日期或日期/时间表达式的日期部分
EXTRACT() 返回日期/时间的单独部分
DATE_ADD() 向日期添加指定的时间间隔
DATE_SUB() 从日期减去指定的时间间隔
DATEDIFF() 返回两个日期之间的天数
DATE_FORMAT() 用不同的格式显示日期/时间


SQL Дата сервера Функции

В следующей таблице перечислены SQL Server в наиболее важных встроенных функций даты:

函数 描述
GETDATE() 返回当前的日期和时间
DATEPART() 返回日期/时间的单独部分
DATEADD() 在日期中添加或减去指定的时间间隔
DATEDIFF() 返回两个日期之间的时间
CONVERT() 用不同的格式显示日期/时间


SQL Дата типы данных

MySQL использует следующие типы данных , хранящихся в значения даты или даты / времени в базе данных:

  • ДАТА - Формат: YYYY-MM-DD
  • DATETIME - Формат: YYYY-MM-DD HH: MM: SS
  • TIMESTAMP - Формат: YYYY-MM-DD HH: MM: SS
  • ГОД - Формат: YYYY или YY

SQL Server использует следующие типы данных , хранящихся в значения даты или даты / времени в базе данных:

  • ДАТА - Формат: YYYY-MM-DD
  • DATETIME - Формат: YYYY-MM-DD HH: MM: SS
  • SMALLDATETIME - Формат: YYYY-MM-DD HH: MM: SS
  • TIMESTAMP - Формат: Единственный цифровой

Примечание: При создании новой таблицы в базе данных, вам необходимо выбрать тип данных для столбца!

Для всех доступных типов данных, пожалуйста , посетите наши полные типы данных Справочное руководство .


Дата обработки SQL

примечание Если деталь не включает в себя время, то можно легко сравнить две даты!

Предположим, мы имеем следующие "Заказы" таблица:

OrderId ProductName OrderDate
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" записей из таблицы.

Мы используем следующую ЗЕЬЕСТ:

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

Результат устанавливается следующим образом:

OrderId ProductName OrderDate
1 Geitost 2008-11-11
3 Mozzarella di Giovanni 2008-11-11

Теперь предположим, что "Заказы" таблица выглядит следующим образом (обратите внимание на "OrderDate" колонка неполный рабочий день):

OrderId ProductName OrderDate
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, как описано выше:

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

Тогда мы получим результаты! Это связано с датой запроса не содержит временную часть.

Совет: Если вы хотите , чтобы сделать запросы простой и легкий в обслуживании, то , пожалуйста , не используйте компоненты времени ваши даты!