SQL Datetime: tudo o que você precisa saber



Este artigo sobre sql datetime irá ajudá-lo a entender como digitar datetime e também como converter de outros tipos de data e hora para datetime

Às vezes lidando com data e hora em SQL pode ser bastante complicado. Embora a data e a hora sejam, na verdade, tipos de dados completamente diferentes, muitas vezes são mesclados em um tipo de dados datetime date. Datas e horas SQL sozinhos são bastante simples, mas mesclar os dois pode ser uma das tarefas mais dolorosas. Neste artigo, aprenderemos sobre o tipo de data e hora do SQL em detalhes.

Qual é o tipo de dados datetime?

No SQL, data hora tipo de dados de data é usado para valores que contêm data e hora. Microsoft define como um data combinada com uma hora do dia com segundos fracionários que se baseia em um relógio de 24 horas .





O SQL especificamente tem muitos tipos de dados que combinam as representações de data e hora, tornando as coisas mais complexas. O mais utilizado é o DATETIME, pois está presente desde as versões anteriores do SQL. SQL recupera e exibe os valores DATETIME no formato ‘AAAA-MM-DD hh: mm: ss’. O intervalo compatível é '1753-01-01 00:00:00' a '9999-12-31 23: 59: 59,997'. Vamos explorar o tipo de data e hora em mais detalhes.

descrição datetime

Verifique a tabela a seguir para saber mais sobre o tipo de data e hora do SQL.



Propriedade Valor

Sintaxe

data hora

Uso



DECLARAR @MyDatetimedata hora

CRIAR TABELA Tabela1 (Coluna1data hora)

Formato

‘AAAA-MM-DD hh: mm: ss.nnn

Intervalo de tempo

00:00:00 a 23: 59: 59.997

Intervalos de elementos

  • YYYY tem quatro dígitos de 1753 a 9999, que representam um ano.
  • MM tem dois dígitos, variando de 01 a 12, o que representa um mês no ano especificado.
  • DD tem dois dígitos, variando de 01 a 31 dependendo do mês, o que representa um dia do mês especificado.
  • hh são dois dígitos, variando de 00 a 23, que representam a hora.
  • mm são dois dígitos, variando de 00 a 59, que representa o minuto.
  • ss tem dois dígitos, variando de 00 a 59, que representa o segundo.
  • n * é de zero a três dígitos, variando de 0 a 999, que representam os segundos fracionários.

Tamanho de armazenamento

como criar uma lista vinculada em c

8 bytes

Valor padrão

1900-01-01 00:00:00

Calendário

Gregoriano (inclui o intervalo completo de anos.)

Nota: Os detalhes acima se aplicam ao tipo de data e hora em Transact-SQL eServidor SQL.

Então isso é data hora em SQL. Mas o que você faria se tivesse outro encontro etipos de tempo e você deve convertê-los para data hora tipo?

Conversão de outros tipos de data e hora para o tipo de dados datetime

o data hora tipo de dados em SQL inclui a data e a hora, com uma parte de segundos fracionários de 3 dígitos. Sua precisão é arredondada para incrementos de .000, .003 ou .007 segundos. Então, quando você converte um encontro ou Tempo valores para data hora , informações extras são adicionadas ao valor. Isso ocorre porque o data hora tipo de dados contém data e hora. Esta parte do artigo explica o que ocorre quando outro data e hora tipos de dados são convertidos para o data hora tipo de dados.

Exemplo 1: conversão implícita entre data e data e hora

DECLARE @date date = '2020-12-01' DECLARE @datetime datetime = @date

Resultado

@datetime @date ------------------------- ---------- 2016-12-21 00: 00: 00.000 2016 -12-21

Exemplo 2: conversão implícita entre data e data e hora usando CAST ()

DECLARE @thedate data = '2020-12-01' SELECT @thedate AS 'data', CAST (@thedate AS datetime) AS 'datetime'

Resultado

@datetime @date ------------------------- ---------- 2016-12-21 00: 00: 00.000 2016 -12-21

Exemplo 3: conversão implícita de smalldatetime para datetime

Quando a conversão é de s malldatetime tipo, as horas e os minutos são copiados. Os segundos e os segundos fracionários são definidos com o valor 0. O código a seguir mostra os resultados da conversão de um smalldatetime valor para um data hora valor.

DECLARE @smalldatetime smalldatetime = '2020-12-01 12:32' DECLARE @datetime datetime = @smalldatetime SELECT @datetime AS '@datetime', @smalldatetime AS '@smalldatetime'

Resultado

@datetime @smalldatetime ------------------------- --------------------- - 2016-12-01 12: 32: 00.000 2016-12-01 12:32:00

Da mesma forma, você pode converter outros data hora tipos para data-hora digite implicitamente ou usando fundida() e converter() métodos. Para sua referência, verifique a tabela abaixo para se familiarizar com os formatos de todos os tipos de data e hora.

Tipo de dados Exemplo

Tempo

12:35:29. 1234567

encontro

08/05/2007

smalldatetime

2007-05-08 12:35:00

data hora

08/05/2007 12: 35: 29.123

datetime2

2007-05-08 12:35:29. 1234567

datetimeoffset

08/05/2007 12: 35: 29.1234567 +12: 15

Com isso, chegamos ao final deste artigo. Espero que você tenha sido claro sobre o conteúdo discutido aqui. Pratique o máximo possível e reverta sua experiência.

Se você deseja aprender mais sobre MySQL e conheça este banco de dados relacional de código aberto e, em seguida, verifique nosso que vem com treinamento ao vivo conduzido por instrutor e experiência em projetos da vida real. Este treinamento o ajudará a entender o MySQL em profundidade e a obter domínio sobre o assunto.

Tem alguma questão para nós? Mencione isso na seção de comentários deste artigo ‘Procedimentos em SQL e entraremos em contato com você.