int | -2.147.483.648 a 2.147.483.647 |
bigint | -9.223.372.036.854.775.808 a 9.223.372.036.854.775.807 |
smallint | -32.768 a 32.767 |
tinyint | 0 a 255 |
money | '-922.337.203.685.477,5808 a 922.337.203.685.477,5807 (-922.337.203.685.477,58 a 922.337.203.685.477,58 |
smallmoney | '-214.748,3648 a 214.748,3647 |
float | '- 1,79E+308 a -2,23E-308, 0 e 2,23E-308 a 1,79E+308 |
real | ' - 3,40E + 38 a -1,18E - 38, 0 e 1,18E - 38 a 3,40E + 38 |
date | AAAA-MM-DD |
smalldatetime | 01.01.00 a 06.06.79 1º de janeiro de 1900 a 6 de junho de 2079 |
datetimeoffset | precisão de segundos fracionário AAAA-MM-DDThh:mm:ss[.nnnnnnn] [{+|-}hh:mm] |
varchar | |
char | |
Alguns exemplos de declarações:
DECLARE @valor INT,
@texto VARCHAR(40),
@data_nascimento DATE,
@nada MONEY
Exemplo de declaração de variável chamada MÊS
declare @mes INT
set @mes = 3
Mais de uma variável:
declare @mes INT, @ano INT, @hora TIME
set @mes = 3
set @ano = 2023
set @hora = '06:00:00'
SELECT DISTINCT
PFUNC.CHAPA AS CHAPA,
PFUNC.NOME AS NOME_FUNCIONARIO,
(SELECT PFFINANC.VALOR as valor
from PFFINANC
where MESCOMP= @mes
and ANOCOMP=2023
and CODEVENTO= '0021'
AND PFFINANC.CHAPA=PFUNC.CHAPA) AS 'INSALUBRIDADE',
-----------------------------------------------------------------------------------------------
declare @data DATE
set @data = '01/01/2023'
-----------------------------------------------------------------------------------------------
--------------------------------------------------------------------------------------------------
Exemplo de um sub select retornando uma data como variável
Os dados retornados estarão na tabela ASALDOBANCOHOR, mas o critério de retorno dentro do WHERE desta consulta, estará dentro da tabela APERIODO, na coluna "aperiodo.fimmensal" com o critério de statusperiodo seja igual a 1, pois representa o período vigente.
Dentro desses critérios, inseri um sub select dentro do WHERE da minha consulta:
WHERE ASALDOBANCOHOR.FIMPER=(select fimmensal from aperiodo where codcoligada = ASALDOBANCOHOR.codcoligada and statusperiodo = 1)
---------------------------------------------------------------------------------------------------------
Exemplo de um sub select retornando a maior data dentro de um critério
Data Referência é a data do fato ocorrido e através desta data, ele retorna a data inicial e final do período de apuração, ou seja, na primeira linha, a data do fato ocorreu dua 08/02/2023 e será computado no período de apuração que iniciou dia 15 de janeiro e finalizou dia 08 de fevereiro.
---------------------------------------------------------------------------------------------------------------------------
Exemplo de subselects (subquerys)
Formatado em moeda brasileira, e se a consulta retornar vazio, retornar com 0:
MÉDIA DE 6 MESES
SUBQUERY com soma utilizando groupby