none
SELECT Coluna em Linha RRS feed

  • Pergunta

  • bom dia, tudo bem? Sei que é dia 31, mas estou trabalhando e acredito que muitos de nos tambem estao, desejo a todos FELIZ 2021, muito sucesso e saude!

    Preciso fazer um select transformando colunas em linha.

    CREATE TABLE [ProdutosPrecos](
    	[ID_Produto] [int] NOT NULL,
    	[ID_Filial] [int] NOT NULL,
    	[MargemLucro] [decimal](18, 8) NOT NULL,
    	[ValorVenda] [decimal](18, 8) NOT NULL,
    	[MargemLucroMin] [decimal](18, 8) NOT NULL,
    	[ValorVendaMin] [decimal](18, 8) NOT NULL,
    	[MargemLucro2] [decimal](18, 8) NOT NULL,
    	[ValorVenda2] [decimal](18, 8) NOT NULL,
    	[MargemLucroMin2] [decimal](18, 8) NOT NULL,
    	[ValorVendaMin2] [decimal](18, 8) NOT NULL,
    	[MargemLucro3] [decimal](18, 8) NOT NULL,
    	[ValorVenda3] [decimal](18, 8) NOT NULL,
    	[MargemLucroMin3] [decimal](18, 8) NOT NULL,
    	[ValorVendaMin3] [decimal](18, 8) NOT NULL,
    	[MargemLucro4] [decimal](18, 8) NOT NULL,
    	[ValorVenda4] [decimal](18, 8) NOT NULL,
    	[MargemLucroMin4] [decimal](18, 8) NOT NULL,
    	[ValorVendaMin4] [decimal](18, 8) NOT NULL,
    	[MargemLucro5] [decimal](18, 8) NOT NULL,
    	[ValorVenda5] [decimal](18, 8) NOT NULL,
    	[MargemLucroMin5] [decimal](18, 8) NOT NULL,
    	[ValorVendaMin5] [decimal](18, 8) NOT NULL,
    	[MargemLucro6] [decimal](18, 8) NOT NULL,
    	[ValorVenda6] [decimal](18, 8) NOT NULL,
    	[MargemLucroMin6] [decimal](18, 8) NOT NULL,
    	[ValorVendaMin6] [decimal](18, 8) NOT NULL,
    	[MargemLucro7] [decimal](18, 8) NOT NULL,
    	[ValorVenda7] [decimal](18, 8) NOT NULL,
    	[MargemLucroMin7] [decimal](18, 8) NOT NULL,
    	[ValorVendaMin7] [decimal](18, 8) NOT NULL,
    	[MargemLucro8] [decimal](18, 8) NOT NULL,
    	[ValorVenda8] [decimal](18, 8) NOT NULL,
    	[MargemLucroMin8] [decimal](18, 8) NOT NULL,
    	[ValorVendaMin8] [decimal](18, 8) NOT NULL,
    	[MargemLucro9] [decimal](18, 8) NOT NULL,
    	[ValorVenda9] [decimal](18, 8) NOT NULL,
    	[MargemLucroMin9] [decimal](18, 8) NOT NULL,
    	[ValorVendaMin9] [decimal](18, 8) NOT NULL,
     CONSTRAINT [PK_CE100_ProdutosPrecos] PRIMARY KEY CLUSTERED 
    (
    	[ID_Produto] ASC
    )WITH (PAD_INDEX = OFF, STATISTICS_NORECOMPUTE = OFF, IGNORE_DUP_KEY = OFF, ALLOW_ROW_LOCKS = ON, ALLOW_PAGE_LOCKS = ON, FILLFACTOR = 80, OPTIMIZE_FOR_SEQUENTIAL_KEY = OFF)
    )
    GO
    
    INSERT INTO [ProdutosPrecos] ([ID_Produto],[ID_Filial],[MargemLucro],[ValorVenda],[MargemLucroMin],[ValorVendaMin],[MargemLucro2],[ValorVenda2],[MargemLucroMin2],[ValorVendaMin2],[MargemLucro3],[ValorVenda3],[MargemLucroMin3],[ValorVendaMin3],[MargemLucro4],[ValorVenda4],[MargemLucroMin4],[ValorVendaMin4],[MargemLucro5],[ValorVenda5],[MargemLucroMin5],[ValorVendaMin5],[MargemLucro6],[ValorVenda6],[MargemLucroMin6],[ValorVendaMin6],[MargemLucro7],[ValorVenda7],[MargemLucroMin7],[ValorVendaMin7],[MargemLucro8],[ValorVenda8],[MargemLucroMin8],[ValorVendaMin8],[MargemLucro9],[ValorVenda9],[MargemLucroMin9],[ValorVendaMin9])     VALUES(1, 1, 1,1, 1, 1, 2, 2, 2, 2, 3, 3, 3, 3, 4, 4, 4, 4, 5, 5, 5, 5, 6, 6, 6, 6, 7, 7, 7, 7, 8, 8, 8, 8, 9, 9, 9, 9 )
    INSERT INTO [ProdutosPrecos] ([ID_Produto],[ID_Filial],[MargemLucro],[ValorVenda],[MargemLucroMin],[ValorVendaMin],[MargemLucro2],[ValorVenda2],[MargemLucroMin2],[ValorVendaMin2],[MargemLucro3],[ValorVenda3],[MargemLucroMin3],[ValorVendaMin3],[MargemLucro4],[ValorVenda4],[MargemLucroMin4],[ValorVendaMin4],[MargemLucro5],[ValorVenda5],[MargemLucroMin5],[ValorVendaMin5],[MargemLucro6],[ValorVenda6],[MargemLucroMin6],[ValorVendaMin6],[MargemLucro7],[ValorVenda7],[MargemLucroMin7],[ValorVendaMin7],[MargemLucro8],[ValorVenda8],[MargemLucroMin8],[ValorVendaMin8],[MargemLucro9],[ValorVenda9],[MargemLucroMin9],[ValorVendaMin9])     VALUES(2, 1, 2,2, 2, 2, 3, 3, 3, 3, 4, 4, 4, 4, 5, 5, 5, 5, 6, 6, 6, 6, 7, 7, 7, 7, 8, 8, 8, 8, 9, 9, 9, 9, 10, 10, 10, 10 )
    INSERT INTO [ProdutosPrecos] ([ID_Produto],[ID_Filial],[MargemLucro],[ValorVenda],[MargemLucroMin],[ValorVendaMin],[MargemLucro2],[ValorVenda2],[MargemLucroMin2],[ValorVendaMin2],[MargemLucro3],[ValorVenda3],[MargemLucroMin3],[ValorVendaMin3],[MargemLucro4],[ValorVenda4],[MargemLucroMin4],[ValorVendaMin4],[MargemLucro5],[ValorVenda5],[MargemLucroMin5],[ValorVendaMin5],[MargemLucro6],[ValorVenda6],[MargemLucroMin6],[ValorVendaMin6],[MargemLucro7],[ValorVenda7],[MargemLucroMin7],[ValorVendaMin7],[MargemLucro8],[ValorVenda8],[MargemLucroMin8],[ValorVendaMin8],[MargemLucro9],[ValorVenda9],[MargemLucroMin9],[ValorVendaMin9])     VALUES(3, 1, 3,3, 3, 3, 4, 4, 4, 4, 5, 5, 5, 5, 6, 6, 6, 6, 7, 7, 7, 7, 8, 8, 8, 8, 9, 9, 9, 9, 10, 10, 10, 10, 11, 11, 11, 11 )
    INSERT INTO [ProdutosPrecos] ([ID_Produto],[ID_Filial],[MargemLucro],[ValorVenda],[MargemLucroMin],[ValorVendaMin],[MargemLucro2],[ValorVenda2],[MargemLucroMin2],[ValorVendaMin2],[MargemLucro3],[ValorVenda3],[MargemLucroMin3],[ValorVendaMin3],[MargemLucro4],[ValorVenda4],[MargemLucroMin4],[ValorVendaMin4],[MargemLucro5],[ValorVenda5],[MargemLucroMin5],[ValorVendaMin5],[MargemLucro6],[ValorVenda6],[MargemLucroMin6],[ValorVendaMin6],[MargemLucro7],[ValorVenda7],[MargemLucroMin7],[ValorVendaMin7],[MargemLucro8],[ValorVenda8],[MargemLucroMin8],[ValorVendaMin8],[MargemLucro9],[ValorVenda9],[MargemLucroMin9],[ValorVendaMin9])     VALUES(4, 1, 4,4, 4, 4, 5, 5, 5, 5, 6, 6, 6, 6, 7, 7, 7, 7, 8, 8, 8, 8, 9, 9, 9, 9, 10, 10, 10, 10, 11, 11, 11, 11, 12, 12, 12, 12 )
    INSERT INTO [ProdutosPrecos] ([ID_Produto],[ID_Filial],[MargemLucro],[ValorVenda],[MargemLucroMin],[ValorVendaMin],[MargemLucro2],[ValorVenda2],[MargemLucroMin2],[ValorVendaMin2],[MargemLucro3],[ValorVenda3],[MargemLucroMin3],[ValorVendaMin3],[MargemLucro4],[ValorVenda4],[MargemLucroMin4],[ValorVendaMin4],[MargemLucro5],[ValorVenda5],[MargemLucroMin5],[ValorVendaMin5],[MargemLucro6],[ValorVenda6],[MargemLucroMin6],[ValorVendaMin6],[MargemLucro7],[ValorVenda7],[MargemLucroMin7],[ValorVendaMin7],[MargemLucro8],[ValorVenda8],[MargemLucroMin8],[ValorVendaMin8],[MargemLucro9],[ValorVenda9],[MargemLucroMin9],[ValorVendaMin9])     VALUES(5, 1, 5,5, 5, 5, 6, 6, 6, 6, 7, 7, 7, 7, 8, 8, 8, 8, 9, 9, 9, 9, 10, 10, 10, 10, 11, 11, 11, 11, 12, 12, 12, 12, 13, 13, 13, 13 )
    INSERT INTO [ProdutosPrecos] ([ID_Produto],[ID_Filial],[MargemLucro],[ValorVenda],[MargemLucroMin],[ValorVendaMin],[MargemLucro2],[ValorVenda2],[MargemLucroMin2],[ValorVendaMin2],[MargemLucro3],[ValorVenda3],[MargemLucroMin3],[ValorVendaMin3],[MargemLucro4],[ValorVenda4],[MargemLucroMin4],[ValorVendaMin4],[MargemLucro5],[ValorVenda5],[MargemLucroMin5],[ValorVendaMin5],[MargemLucro6],[ValorVenda6],[MargemLucroMin6],[ValorVendaMin6],[MargemLucro7],[ValorVenda7],[MargemLucroMin7],[ValorVendaMin7],[MargemLucro8],[ValorVenda8],[MargemLucroMin8],[ValorVendaMin8],[MargemLucro9],[ValorVenda9],[MargemLucroMin9],[ValorVendaMin9])     VALUES(6, 1, 6,6, 6, 6, 7, 7, 7, 7, 8, 8, 8, 8, 9, 9, 9, 9, 10, 10, 10, 10, 11, 11, 11, 11, 12, 12, 12, 12, 13, 13, 13, 13, 14, 14, 14, 14 )
    INSERT INTO [ProdutosPrecos] ([ID_Produto],[ID_Filial],[MargemLucro],[ValorVenda],[MargemLucroMin],[ValorVendaMin],[MargemLucro2],[ValorVenda2],[MargemLucroMin2],[ValorVendaMin2],[MargemLucro3],[ValorVenda3],[MargemLucroMin3],[ValorVendaMin3],[MargemLucro4],[ValorVenda4],[MargemLucroMin4],[ValorVendaMin4],[MargemLucro5],[ValorVenda5],[MargemLucroMin5],[ValorVendaMin5],[MargemLucro6],[ValorVenda6],[MargemLucroMin6],[ValorVendaMin6],[MargemLucro7],[ValorVenda7],[MargemLucroMin7],[ValorVendaMin7],[MargemLucro8],[ValorVenda8],[MargemLucroMin8],[ValorVendaMin8],[MargemLucro9],[ValorVenda9],[MargemLucroMin9],[ValorVendaMin9])     VALUES(7, 1, 7,7, 7, 7, 8, 8, 8, 8, 9, 9, 9, 9, 10, 10, 10, 10, 11, 11, 11, 11, 12, 12, 12, 12, 13, 13, 13, 13, 14, 14, 14, 14, 15, 15, 15, 15 )
    INSERT INTO [ProdutosPrecos] ([ID_Produto],[ID_Filial],[MargemLucro],[ValorVenda],[MargemLucroMin],[ValorVendaMin],[MargemLucro2],[ValorVenda2],[MargemLucroMin2],[ValorVendaMin2],[MargemLucro3],[ValorVenda3],[MargemLucroMin3],[ValorVendaMin3],[MargemLucro4],[ValorVenda4],[MargemLucroMin4],[ValorVendaMin4],[MargemLucro5],[ValorVenda5],[MargemLucroMin5],[ValorVendaMin5],[MargemLucro6],[ValorVenda6],[MargemLucroMin6],[ValorVendaMin6],[MargemLucro7],[ValorVenda7],[MargemLucroMin7],[ValorVendaMin7],[MargemLucro8],[ValorVenda8],[MargemLucroMin8],[ValorVendaMin8],[MargemLucro9],[ValorVenda9],[MargemLucroMin9],[ValorVendaMin9])     VALUES(8, 1, 8,8, 8, 8, 9, 9, 9, 9, 10, 10, 10, 10, 11, 11, 11, 11, 12, 12, 12, 12, 13, 13, 13, 13, 14, 14, 14, 14, 15, 15, 15, 15, 16, 16, 16, 16 )
    INSERT INTO [ProdutosPrecos] ([ID_Produto],[ID_Filial],[MargemLucro],[ValorVenda],[MargemLucroMin],[ValorVendaMin],[MargemLucro2],[ValorVenda2],[MargemLucroMin2],[ValorVendaMin2],[MargemLucro3],[ValorVenda3],[MargemLucroMin3],[ValorVendaMin3],[MargemLucro4],[ValorVenda4],[MargemLucroMin4],[ValorVendaMin4],[MargemLucro5],[ValorVenda5],[MargemLucroMin5],[ValorVendaMin5],[MargemLucro6],[ValorVenda6],[MargemLucroMin6],[ValorVendaMin6],[MargemLucro7],[ValorVenda7],[MargemLucroMin7],[ValorVendaMin7],[MargemLucro8],[ValorVenda8],[MargemLucroMin8],[ValorVendaMin8],[MargemLucro9],[ValorVenda9],[MargemLucroMin9],[ValorVendaMin9])     VALUES(9, 1, 9,9, 9, 9, 10, 10, 10, 10, 11, 11, 11, 11, 12, 12, 12, 12, 13, 13, 13, 13, 14, 14, 14, 14, 15, 15, 15, 15, 16, 16, 16, 16, 17, 17, 17, 17 )
    INSERT INTO [ProdutosPrecos] ([ID_Produto],[ID_Filial],[MargemLucro],[ValorVenda],[MargemLucroMin],[ValorVendaMin],[MargemLucro2],[ValorVenda2],[MargemLucroMin2],[ValorVendaMin2],[MargemLucro3],[ValorVenda3],[MargemLucroMin3],[ValorVendaMin3],[MargemLucro4],[ValorVenda4],[MargemLucroMin4],[ValorVendaMin4],[MargemLucro5],[ValorVenda5],[MargemLucroMin5],[ValorVendaMin5],[MargemLucro6],[ValorVenda6],[MargemLucroMin6],[ValorVendaMin6],[MargemLucro7],[ValorVenda7],[MargemLucroMin7],[ValorVendaMin7],[MargemLucro8],[ValorVenda8],[MargemLucroMin8],[ValorVendaMin8],[MargemLucro9],[ValorVenda9],[MargemLucroMin9],[ValorVendaMin9])     VALUES(10, 1, 10,10, 10, 10, 11, 11, 11, 11, 12, 12, 12, 12, 13, 13, 13, 13, 14, 14, 14, 14, 15, 15, 15, 15, 16, 16, 16, 16, 17, 17, 17, 17, 18, 18, 18, 18 )
    INSERT INTO [ProdutosPrecos] ([ID_Produto],[ID_Filial],[MargemLucro],[ValorVenda],[MargemLucroMin],[ValorVendaMin],[MargemLucro2],[ValorVenda2],[MargemLucroMin2],[ValorVendaMin2],[MargemLucro3],[ValorVenda3],[MargemLucroMin3],[ValorVendaMin3],[MargemLucro4],[ValorVenda4],[MargemLucroMin4],[ValorVendaMin4],[MargemLucro5],[ValorVenda5],[MargemLucroMin5],[ValorVendaMin5],[MargemLucro6],[ValorVenda6],[MargemLucroMin6],[ValorVendaMin6],[MargemLucro7],[ValorVenda7],[MargemLucroMin7],[ValorVendaMin7],[MargemLucro8],[ValorVenda8],[MargemLucroMin8],[ValorVendaMin8],[MargemLucro9],[ValorVenda9],[MargemLucroMin9],[ValorVendaMin9])     VALUES(11, 1, 11,11, 11, 11, 12, 12, 12, 12, 13, 13, 13, 13, 14, 14, 14, 14, 15, 15, 15, 15, 16, 16, 16, 16, 17, 17, 17, 17, 18, 18, 18, 18, 19, 19, 19, 19 )
    INSERT INTO [ProdutosPrecos] ([ID_Produto],[ID_Filial],[MargemLucro],[ValorVenda],[MargemLucroMin],[ValorVendaMin],[MargemLucro2],[ValorVenda2],[MargemLucroMin2],[ValorVendaMin2],[MargemLucro3],[ValorVenda3],[MargemLucroMin3],[ValorVendaMin3],[MargemLucro4],[ValorVenda4],[MargemLucroMin4],[ValorVendaMin4],[MargemLucro5],[ValorVenda5],[MargemLucroMin5],[ValorVendaMin5],[MargemLucro6],[ValorVenda6],[MargemLucroMin6],[ValorVendaMin6],[MargemLucro7],[ValorVenda7],[MargemLucroMin7],[ValorVendaMin7],[MargemLucro8],[ValorVenda8],[MargemLucroMin8],[ValorVendaMin8],[MargemLucro9],[ValorVenda9],[MargemLucroMin9],[ValorVendaMin9])     VALUES(12, 1, 12,12, 12, 12, 13, 13, 13, 13, 14, 14, 14, 14, 15, 15, 15, 15, 16, 16, 16, 16, 17, 17, 17, 17, 18, 18, 18, 18, 19, 19, 19, 19, 20, 20, 20, 20 )
    INSERT INTO [ProdutosPrecos] ([ID_Produto],[ID_Filial],[MargemLucro],[ValorVenda],[MargemLucroMin],[ValorVendaMin],[MargemLucro2],[ValorVenda2],[MargemLucroMin2],[ValorVendaMin2],[MargemLucro3],[ValorVenda3],[MargemLucroMin3],[ValorVendaMin3],[MargemLucro4],[ValorVenda4],[MargemLucroMin4],[ValorVendaMin4],[MargemLucro5],[ValorVenda5],[MargemLucroMin5],[ValorVendaMin5],[MargemLucro6],[ValorVenda6],[MargemLucroMin6],[ValorVendaMin6],[MargemLucro7],[ValorVenda7],[MargemLucroMin7],[ValorVendaMin7],[MargemLucro8],[ValorVenda8],[MargemLucroMin8],[ValorVendaMin8],[MargemLucro9],[ValorVenda9],[MargemLucroMin9],[ValorVendaMin9])     VALUES(13, 1, 13,13, 13, 13, 14, 14, 14, 14, 15, 15, 15, 15, 16, 16, 16, 16, 17, 17, 17, 17, 18, 18, 18, 18, 19, 19, 19, 19, 20, 20, 20, 20, 21, 21, 21, 21 )
    INSERT INTO [ProdutosPrecos] ([ID_Produto],[ID_Filial],[MargemLucro],[ValorVenda],[MargemLucroMin],[ValorVendaMin],[MargemLucro2],[ValorVenda2],[MargemLucroMin2],[ValorVendaMin2],[MargemLucro3],[ValorVenda3],[MargemLucroMin3],[ValorVendaMin3],[MargemLucro4],[ValorVenda4],[MargemLucroMin4],[ValorVendaMin4],[MargemLucro5],[ValorVenda5],[MargemLucroMin5],[ValorVendaMin5],[MargemLucro6],[ValorVenda6],[MargemLucroMin6],[ValorVendaMin6],[MargemLucro7],[ValorVenda7],[MargemLucroMin7],[ValorVendaMin7],[MargemLucro8],[ValorVenda8],[MargemLucroMin8],[ValorVendaMin8],[MargemLucro9],[ValorVenda9],[MargemLucroMin9],[ValorVendaMin9])     VALUES(14, 1, 14,14, 14, 14, 15, 15, 15, 15, 16, 16, 16, 16, 17, 17, 17, 17, 18, 18, 18, 18, 19, 19, 19, 19, 20, 20, 20, 20, 21, 21, 21, 21, 22, 22, 22, 22 )
    INSERT INTO [ProdutosPrecos] ([ID_Produto],[ID_Filial],[MargemLucro],[ValorVenda],[MargemLucroMin],[ValorVendaMin],[MargemLucro2],[ValorVenda2],[MargemLucroMin2],[ValorVendaMin2],[MargemLucro3],[ValorVenda3],[MargemLucroMin3],[ValorVendaMin3],[MargemLucro4],[ValorVenda4],[MargemLucroMin4],[ValorVendaMin4],[MargemLucro5],[ValorVenda5],[MargemLucroMin5],[ValorVendaMin5],[MargemLucro6],[ValorVenda6],[MargemLucroMin6],[ValorVendaMin6],[MargemLucro7],[ValorVenda7],[MargemLucroMin7],[ValorVendaMin7],[MargemLucro8],[ValorVenda8],[MargemLucroMin8],[ValorVendaMin8],[MargemLucro9],[ValorVenda9],[MargemLucroMin9],[ValorVendaMin9])     VALUES(15, 1, 15,15, 15, 15, 16, 16, 16, 16, 17, 17, 17, 17, 18, 18, 18, 18, 19, 19, 19, 19, 20, 20, 20, 20, 21, 21, 21, 21, 22, 22, 22, 22, 23, 23, 23, 23 )
    INSERT INTO [ProdutosPrecos] ([ID_Produto],[ID_Filial],[MargemLucro],[ValorVenda],[MargemLucroMin],[ValorVendaMin],[MargemLucro2],[ValorVenda2],[MargemLucroMin2],[ValorVendaMin2],[MargemLucro3],[ValorVenda3],[MargemLucroMin3],[ValorVendaMin3],[MargemLucro4],[ValorVenda4],[MargemLucroMin4],[ValorVendaMin4],[MargemLucro5],[ValorVenda5],[MargemLucroMin5],[ValorVendaMin5],[MargemLucro6],[ValorVenda6],[MargemLucroMin6],[ValorVendaMin6],[MargemLucro7],[ValorVenda7],[MargemLucroMin7],[ValorVendaMin7],[MargemLucro8],[ValorVenda8],[MargemLucroMin8],[ValorVendaMin8],[MargemLucro9],[ValorVenda9],[MargemLucroMin9],[ValorVendaMin9])     VALUES(16, 1, 16,16, 16, 16, 17, 17, 17, 17, 18, 18, 18, 18, 19, 19, 19, 19, 20, 20, 20, 20, 21, 21, 21, 21, 22, 22, 22, 22, 23, 23, 23, 23, 24, 24, 24, 24 )
    
    
    

    Preciso que o resultado do SELECT seja:

    Produto Tabela ValorVenda

    1            1         1
    1             2        2
    1           3          3

    Alguem pode me ajudar?

    Obrigado!

    quinta-feira, 31 de dezembro de 2020 13:28

Respostas

  • Boa tarde,

    Acho que uma alternativa para o seu caso seria o uso do operador Values. Ex:

    SELECT 
        pp.[ID_Produto],
        pp.[ID_Filial],
        ca.[MargemLucro],
        ca.[ValorVenda],
        ca.[MargemLucroMin],
        ca.[ValorVendaMin]
    FROM [ProdutosPrecos] as pp
    CROSS APPLY
    (      
        select *
        from 
        (
            values      
                ([MargemLucro], [ValorVenda], [MargemLucroMin], [ValorVendaMin]),
                ([MargemLucro2], [ValorVenda2], [MargemLucroMin2], [ValorVendaMin2]),
                ([MargemLucro3], [ValorVenda3], [MargemLucroMin3], [ValorVendaMin3])
        ) as v([MargemLucro], [ValorVenda], [MargemLucroMin], [ValorVendaMin])
    ) as ca

    Espero que ajude


    Assinatura: http://www.imoveisemexposicao.com.br

    • Marcado como Resposta DaviSaba sábado, 16 de janeiro de 2021 06:53
    sexta-feira, 1 de janeiro de 2021 19:17

Todas as Respostas

  • Boa tarde,

    Acho que uma alternativa para o seu caso seria o uso do operador Values. Ex:

    SELECT 
        pp.[ID_Produto],
        pp.[ID_Filial],
        ca.[MargemLucro],
        ca.[ValorVenda],
        ca.[MargemLucroMin],
        ca.[ValorVendaMin]
    FROM [ProdutosPrecos] as pp
    CROSS APPLY
    (      
        select *
        from 
        (
            values      
                ([MargemLucro], [ValorVenda], [MargemLucroMin], [ValorVendaMin]),
                ([MargemLucro2], [ValorVenda2], [MargemLucroMin2], [ValorVendaMin2]),
                ([MargemLucro3], [ValorVenda3], [MargemLucroMin3], [ValorVendaMin3])
        ) as v([MargemLucro], [ValorVenda], [MargemLucroMin], [ValorVendaMin])
    ) as ca

    Espero que ajude


    Assinatura: http://www.imoveisemexposicao.com.br

    • Marcado como Resposta DaviSaba sábado, 16 de janeiro de 2021 06:53
    sexta-feira, 1 de janeiro de 2021 19:17
  • DaviSaba,

    Você poderia nos apresentar como os dados estão armazenados neste momento?

    Deste conjunto de colunas declaradas na sua tabela, você esta querendo de forma específica "agrupar" por Produto, Tabela e ValorVenda?

    Por acaso não estamos fazendo referência a uma possível junção cruzada?


    Pedro Antonio Galvão Junior [MVP | MCC | MSTC | MIE | MTAC | Microsoft Evangelist | Microsoft Partner | Engenheiro de Softwares | Especialista em Banco de Dados Relacional e Data Warehouse | Professor Universitário | @JuniorGalvaoMVP | http://pedrogalvaojunior.wordpress.com]

    quarta-feira, 6 de janeiro de 2021 11:20
  • Boa noite, tudo bem?

    Junior, obrigado por me ajudar ...

    No banco temos disponibilidade engessada de 9 tabelas de preços para venda, representada pelos campos: 

    Tabela 01 - [MargemLucro], [ValorVenda], [MargemLucroMin], [ValorVendaMin]

    Tabela 02 - [MargemLucro2], [ValorVenda2], [MargemLucroMin2], [ValorVendaMin2]

    Tabela 03 - [MargemLucro3], [ValorVenda3], [MargemLucroMin3], [ValorVendaMin3]

    Assim até a tabela 09.

    Mas em uma determinada consulta, eu queria apresentar esses dados para o usuario assim:

    Tabela       Valor Venda
    --------------------------------
    Tabela 01         10,00

    Tabela 02           9,00

    Tabela 03           7,00

    assim por diante ...

    Obrigado!

    sexta-feira, 15 de janeiro de 2021 01:41
  • DaviSaba,

    Ok, obrigado pelo retorno, o uso do Operador Cross Apply em conjunto com Values não te ajudou?

    Da maneira que você esta postando, pensei inicialmente em fazer uso do operador Union, trazendo os respectivos Selects destas nove tabelas e estabelecendo a Union entre elas.

    A minha dúvida esta justamente em saber qual é o resultado que deve ser apresentado para esta coluna denominada Valor Venda.

    O valor venda seria uma fórmula?


    Pedro Antonio Galvão Junior [MVP | MCC | MSTC | MIE | MTAC | Microsoft Evangelist | Microsoft Partner | Engenheiro de Softwares | Especialista em Banco de Dados Relacional e Data Warehouse | Professor Universitário | @JuniorGalvaoMVP | http://pedrogalvaojunior.wordpress.com]

    sexta-feira, 15 de janeiro de 2021 11:19
  • Junior, bom dia!

    Deu certo sim, consegui fazer o que preciso ... muito obrigado!
    sábado, 16 de janeiro de 2021 06:53