Trabalhando com Datas - SQL Server

Informática

29/09/2008

Por: Sueli Mitie Joboji

O SQL Server suporta dois tipos de data: datetime e smalldatetime. A principal diferença entre elas é: o datetime utiliza dois inteiros de quatro bytes para armazenamento. Os primeiros quatro bytes armazenam o número de dias antes ou depois da data base. Datas menores que 01/01/1753 não são permitidos. Os outros quatro bytes armazenam a hora do dia representado como o número de milissegundos após a meia-noite. Já o tipo smalldatetime utiliza dois inteiros de dois bytes. Os primeiros 2 bytes armazenam o número de dias após 01/01/1900. Os outros dois bytes armazenam o número de minutos desde a meia-noite. Considera-se que o smalldatetime armazena data e hora com menos precisão do que o datetime. Outra diferença entre eles é que o tipo de dados datetime armazena até centésimos de segundo e o smalldatetime até segundos.

Exemplo: A execução da SQL abaixo resultou nos dados da Tabela 1.

INSERT INTO [bd1].[dbo].[Testes]       
        ([data_datetime]
        ,[data_smalldatetime])
VALUES
        (Getdate()
        ,GetDate())

id

Data_datetime

Data_smalldatetime

1

2008-09-28 16:15:30.107

2008-09-28 16:16:00

 

2

2008-09-28 16:15:51.217

2008-09-28 16:16:00

 

3

2008-09-28 16:21:20.890

2008-09-28 16:21:00

                                                        Tabela 1

Função CONVERT

A função CONVERT retorna uma data de acordo com o formato passado como parâmetro (terceiro parâmetro).

SELECT CONVERT(VARCHAR,GETDATE(),0) -> retorna Sep 28 2008  4:48PM

Veja a seguir os principais formatos retornados pela função CONVERT:

 

id

Formato

Exemplo

1

MM/DD/AA

09/28/08

2

AA.MM.DD

08.09.28

3

DD/MM/AA

28/09/08

4

DD.MM.AA

28.09.08

5

DD-MM-AA

28-09-08

10

MM-DD-AA

09-28-08

11

AA/MM/DD

08/09/28

12

AAMMDD

080928

14

HH:MM:SS:MS

17:02:19:873

20

AAAA-MM-DD HH:MM:SS

2008-09-28 17:03:34

21

AAAA-MM-DD HH:MM:SS:MS

2008-09-28 17:04:32.700

23

AAAA-MM-DD

2008-09-28

24

HH:MM:SS

17:05:28

101

MM/DD/AAAA

09/28/2008

102

AAAA.MM.DD

2008.09.28

103

DD/MM/AAAA

28/09/2008

104

DD.MM.AAAA

28.09.2008

105

DD-MM-AAAA

28-09-2008

108

HH:MM:SS

17:09:56

110

MM-DD-AAA

09-28-2008

111

AAAA/MM/DD

2008/09/28

112

AAAAMMDD

20080928

120

AAAA-MM-DD HH:MM:SS

2008-09-28 17:11:37

121

AAAA-MM-DD HH:MM:SS:MS

2008-09-28 17:12:02.467

 

 

Referências: http://msdn.microsoft.com/en-us/library/aa258277(SQL.80).aspx

Esta apresentação reflete a opinião pessoal do autor sobre o tema, podendo não refletir a posição oficial do Portal Educação.


Colunista Portal - Educação

por Colunista Portal - Educação

O Portal Educação possui uma equipe focada no trabalho de curadoria de conteúdo. Artigos em diversas áreas do conhecimento são produzidos e disponibilizados para profissionais, acadêmicos e interessados em adquirir conhecimento qualificado. O departamento de Conteúdo e Comunicação leva ao leitor informações de alto nível, recebidas e publicadas de colunistas externos e internos.

Portal Educação

UOL CURSOS TECNOLOGIA EDUCACIONAL LTDA, com sede na cidade de São Paulo, SP, na Alameda Barão de Limeira, 425, 7º andar - Santa Cecília CEP 01202-001 CNPJ: 17.543.049/0001-93