Archive | março, 2013

Condicional SQL Server (CASE)

CASE WHEN THEN SQLServer

-- CASE WHEN THEN SQLServer
SELECT A.ID_CARGO,
	  CASE A.ID_CARGO
		   WHEN '1' THEN 'COPEIRA II'
		   WHEN '2' THEN 'ANALISTA DA CENTRAL ATEN'
		   WHEN '3' THEN 'ANALISTA SUPORTE TECNICO'
		   WHEN '4' THEN 'DIRETOR ADMINISTRATIVO'
		   WHEN '5' THEN 'DIR.ADJUNTO DE PATRIMONI'
		   ELSE A.DESC_CARGO
	  END AS DESCRICAO_CARGO
 FROM D_CARGO A
ORDER BY A.ID_CARGO

Concatenando SQL Server

Concatenando Caracteres no SQL Server
Removendo último caractere de um VARCHAR

No código abaixo faço uma lógica para extrair todos os anos a partir do ano de 2010 até 2014 através de um laço WHILE concatenando os anos e separando por virgula. No Exemplo também mostro como remover o ultimo carácter.

DECLARE @w_ano_loop  NUMERIC,
	@w_semestre  VARCHAR(3),
	@w_juntatudo VARCHAR(800)

        SET @w_ano_loop  = 2010
        SET @w_semestre  = '1,2'
        SET @w_juntatudo = ''

WHILE @w_ano_loop != CONVERT( NUMERIC,DATEPART(YEAR, GETDATE())+1 )	BEGIN
	SET @w_juntatudo = @w_juntatudo + convert(varchar,@w_ano_loop)+','
	SET @w_ano_loop  = @w_ano_loop + 1
END

SELECT LEFT(@w_juntatudo,LEN(@w_juntatudo)-1) AS [IN_ANO],
	   @w_semestre AS [IN_SEM]
Resultado

Resultado

 

 

 

#CopieColeExecute