none
Ajuda com parâmetros. RRS feed

  • Pergunta

  • Boa tarde!

    Se eu declarar um parâmero e setá-lo como um select, funcionará?

    Ex: 

    declare @FRETECLIENTE AS VARCHAR(1000)SET @FRETECLIENTE = (SELECT(Pedido.Frete / COUNT(Pedido.ID_Pedido))		FROM DW_pedidos_itens DetalhePedido (NOLOCK)		INNER JOIN DW_pedidos Pedido (NOLOCK) ON			DetalhePedido.ID_Pedido = Pedido.ID_Pedido		WHERE Pedido.ID_Pedido = PedidoOut.ID_Pedido		GROUP BY Pedido.ID_Pedido,Pedido.Frete) 	--ai depois:create view [exemplo]asdeletedw_mapa_venda.VLVENDA			 VALORVENDA,UPPER(loja.descr_loja)				CAMPANHA,@FRETECLIENTEFROM dw_mapa_venda  oltp_mldw_mapa_venda (NOLOCK)

    abraço


    • Editado Ricardo.Bezerra sexta-feira, 24 de janeiro de 2014 20:09 Errei ao mandar o código
    sexta-feira, 24 de janeiro de 2014 20:00

Respostas

  • Deleted
    • Marcado como Resposta Giovani Cr sexta-feira, 31 de janeiro de 2014 11:15
    sexta-feira, 24 de janeiro de 2014 20:14
  • Deleted
    • Sugerido como Resposta Edinaldo Junior segunda-feira, 27 de janeiro de 2014 13:52
    • Marcado como Resposta Giovani Cr sexta-feira, 31 de janeiro de 2014 11:15
    sexta-feira, 24 de janeiro de 2014 20:19
  • mas teria uma função similar a de uma temporária?

    Ricardo,

    Para pequenas quantidades de dados ela é ideal, porque os dados que você precisa manipular são alocados na memória do servidor evitando I/O, o que torna toda a operação mais rápida.

    Veja mais informações sobre a variável table no link abaixo:

    http://technet.microsoft.com/en-us/library/ms175010.aspx

    Se ajudou na sua solução, não esqueça de marcar como resposta !

    Abraços,

    Durval Ramos
    Microsoft Partner | MTA - SQL Server 2012
    ----------------------------------
    Se foi resolvido clique "Marcar como resposta" e se foi útil "Votar como Útil"
    • Sugerido como Resposta Edinaldo Junior segunda-feira, 27 de janeiro de 2014 13:52
    • Marcado como Resposta Giovani Cr sexta-feira, 31 de janeiro de 2014 11:15
    segunda-feira, 27 de janeiro de 2014 11:17
    Moderador
  • Cara vc pode setar sim com um select mas existe uma maneira mais simples

    select @parametro=(campo1 / campo2) from tbl.

    Porém tome cuidado com contas de divisão pois o campo2 precisa ser maior ou igual 1 se for zero vc receberá o erro connot divide by zero. 

    Abraço.


    Nome : Romy G. Moura Cargo: Analista Programador

    • Marcado como Resposta Giovani Cr sexta-feira, 31 de janeiro de 2014 11:15
    segunda-feira, 27 de janeiro de 2014 11:23

Todas as Respostas

  • Deleted
    • Marcado como Resposta Giovani Cr sexta-feira, 31 de janeiro de 2014 11:15
    sexta-feira, 24 de janeiro de 2014 20:14
  • se for pra retornar mais de uma linha, tem alguma forma de fazer?
    sexta-feira, 24 de janeiro de 2014 20:16
  • Deleted
    • Sugerido como Resposta Edinaldo Junior segunda-feira, 27 de janeiro de 2014 13:52
    • Marcado como Resposta Giovani Cr sexta-feira, 31 de janeiro de 2014 11:15
    sexta-feira, 24 de janeiro de 2014 20:19
  • mas teria uma função similar a de uma temporária?
    sexta-feira, 24 de janeiro de 2014 20:20
  • mas teria uma função similar a de uma temporária?

    Ricardo,

    Para pequenas quantidades de dados ela é ideal, porque os dados que você precisa manipular são alocados na memória do servidor evitando I/O, o que torna toda a operação mais rápida.

    Veja mais informações sobre a variável table no link abaixo:

    http://technet.microsoft.com/en-us/library/ms175010.aspx

    Se ajudou na sua solução, não esqueça de marcar como resposta !

    Abraços,

    Durval Ramos
    Microsoft Partner | MTA - SQL Server 2012
    ----------------------------------
    Se foi resolvido clique "Marcar como resposta" e se foi útil "Votar como Útil"
    • Sugerido como Resposta Edinaldo Junior segunda-feira, 27 de janeiro de 2014 13:52
    • Marcado como Resposta Giovani Cr sexta-feira, 31 de janeiro de 2014 11:15
    segunda-feira, 27 de janeiro de 2014 11:17
    Moderador
  • Cara vc pode setar sim com um select mas existe uma maneira mais simples

    select @parametro=(campo1 / campo2) from tbl.

    Porém tome cuidado com contas de divisão pois o campo2 precisa ser maior ou igual 1 se for zero vc receberá o erro connot divide by zero. 

    Abraço.


    Nome : Romy G. Moura Cargo: Analista Programador

    • Marcado como Resposta Giovani Cr sexta-feira, 31 de janeiro de 2014 11:15
    segunda-feira, 27 de janeiro de 2014 11:23