tutoriais mais recente desenvolvimento web
 

SQL Funções de data


Datas SQL

A parte mais difícil quando se trabalha com datas é ter a certeza de que o formato da data que você está tentando inserir, corresponde ao formato da coluna de data no banco de dados.


MySQL Data Funções

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

Função Descrição
NOW() Retorna a data e hora atuais
CURDATE() Retorna a data atual
CURTIME() Retorna a hora atual
DATE() Extrai a parte da data de uma data ou expressão / hora
EXTRACT() Retorna um único parte de uma data / hora
DATE_ADD() Adiciona um intervalo de tempo especificado para uma data
DATE_SUB() Subtrai um intervalo de tempo especificado a partir de uma data
DATEDIFF() Retorna o número de dias entre duas datas
DATE_FORMAT() Exibe a data / data hora em diferentes formatos

Servidor Data Funções SQL

A tabela a seguir lista os mais importantes funções de data incorporados no SQL Server:

Função Descrição
GETDATE() Retorna a data e hora atuais
DATEPART() Retorna um único parte de uma data / hora
DATEADD() Adiciona ou subtrai um intervalo de tempo especificado a partir de uma data
DATEDIFF() Retorna o tempo entre duas datas
CONVERT() Exibe a data / data hora em diferentes formatos

Tipos de Dados SQL Data

MySQL vem com os seguintes tipos de dados para armazenar uma data ou um valor de data / hora no banco de dados:

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

SQL Server vem com os seguintes tipos de dados para armazenar uma data ou um valor de data / hora no banco de dados:

  • DATA - formato AAAA-MM-DD
  • DATETIME - formato: AAAA-MM-DD HH: MI: SS
  • SMALLDATETIME - formato: AAAA-MM-DD HH: MI: SS
  • TIMESTAMP - formato: um número único

Note: Os tipos de data são escolhidos para uma coluna quando você cria uma nova tabela em seu banco de dados!

Para uma visão geral de todos os tipos de dados disponíveis, vá ao nosso completo referência Tipos de Dados .


SQL Trabalhando com datas

Você pode comparar duas datas com facilidade se não existe nenhum componente tempo envolvido!

Suponha que temos o seguinte "Orders" 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 os registros com um OrderDate de "2008-11-11" da tabela acima.

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

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

O resultado-set será parecido com este:

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

Agora, suponha que o "Orders" da tabela se parece com isso (note o componente de tempo no "OrderDate" 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'

vamos obter nenhum resultado! Isso ocorre porque a consulta está olhando apenas para datas com nenhuma parte do tempo.

Tip: Se você quiser manter suas consultas simples e de fácil manutenção, não permitir que componentes de tempo em suas datas!