Latest web development tutorials

SQL Server e MySQL na função Data

SQL Data (datas)

nota Quando lidamos com a data, é, provavelmente, a tarefa mais difícil garantir que o formato de data inserido corresponder ao formato de data na coluna de banco de dados.

Enquanto seus dados contém apenas a parte de data, as consultas vai dar errado. No entanto, se o componente de tempo envolvido, a situação é um pouco complicada.

Antes de discutir a complexidade da data de consulta, vamos olhar para as funções de processamento de data built-in mais importantes.


MySQL Data Funções

A tabela a seguir lista os mais importantes funções internas de data do MySQL:

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


Servidor Data Funções SQL

A tabela a seguir lista o SQL Server nos mais importantes funções de data built-in:

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


Tipos de Dados SQL Data

MySQL usa os seguintes tipos de dados armazenados nos valores de data ou de data / hora no banco de dados:

  • DATA - Formato: AAAA-MM-DD
  • DATETIME - Formato: AAAA-MM-DD HH: MM: SS
  • TIMESTAMP - Formato: AAAA-MM-DD HH: MM: SS
  • ANO - Formato: AAAA ou YY

SQL Server usa os seguintes tipos de dados armazenados nos valores de data ou de data / hora no banco de dados:

  • DATA - Formato: AAAA-MM-DD
  • DATETIME - Formato: AAAA-MM-DD HH: MM: SS
  • SMALLDATETIME - Formato: AAAA-MM-DD HH: MM: SS
  • TIMESTAMP - Formato: A única digitais

Nota: Quando você cria uma nova tabela no banco de dados, você precisa selecionar um tipo de dados para a coluna!

Para todos os tipos de dados disponíveis, por favor visite o nosso completos Tipos de Dados Manual de Referência .


Data Processing SQL

nota Se a parte não envolve tempo, então podemos facilmente comparar duas datas!

Suponha que temos os seguintes "Pedidos" tabela:

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

Agora queremos selecionar OrderDate como "2008-11-11" registros da tabela.

Nós usamos a seguinte instrução SELECT:

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

O conjunto de resultados da seguinte forma:

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

Agora, suponha que "Pedidos" tabela é a seguinte (note "OrderDate" tempo parcial coluna):

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

Se usarmos a mesma instrução SELECT como acima:

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

Então, vamos obter resultados! Isto é devido à data da consulta contém nenhuma parte de tempo.

Dica: Se você quiser fazer consultas simples e fácil de manter, então por favor não use os componentes de tempo em suas datas!