Fórum Colocar dados na mesma linha (SQL SERVER) #616059

23/06/2021

0

Prezados, boa tarde!

Estou com uma dificuldade em colocar os dados retornados na mesma linha, são dois tipos de dados retornados.
Numérico e Data
1
2
3
4
5
6
7
8
SELECT X.CONTEUDOVALOR, X.CONTEUDODATA
    FROM MS_INFOCOMPLEMENTARVALOR X
WHERE X.INFOCOMPLEMENTAR IN (SELECT Z.HANDLE
                FROM MS_INFOCOMPLEMENTAR Z
                INNER JOIN MS_INFOCOMPLEMENTARVALOR Z1 ON Z1.INFOCOMPLEMENTAR = Z.HANDLE
                WHERE Z.HANDLEORIGEM = 2)
 
AND X.TIPOCAMPO IN (1,3)

Ele me retorna da seguinte forma
1
2
3
4
5
6
7
CONTEUDOVALOR   CONTEUDODATA
0                                       01/06/2021
340000 
0                                        01/07/2021
340000 
0                                         01/08/2021
340000 


Gostaria que retornasse assim:
1
2
3
4
5
CONTEUDOVALOR   CONTEUDODATA
340000                                      01/06/2021
340000                                      01/07/2021
340000                                      01/08/2021
    


Alguém poderia me ajudar?
Isaque

Isaque

Responder

Post mais votado

23/06/2021

você pode "reduzir" a query...
1
2
3
4
5
SELECT Z1.CONTEUDOVALOR, Z1.CONTEUDODATA
FROM MS_INFOCOMPLEMENTAR Z
INNER JOIN MS_INFOCOMPLEMENTARVALOR Z1 ON Z1.INFOCOMPLEMENTAR = Z.HANDLE
   AND Z1.TIPOCAMPO IN (1,3)
WHERE Z.HANDLEORIGEM = 2


Emerson Nascimento

Emerson Nascimento
Responder

Gostei + 2

Mais Posts

25/06/2021

Isaque

você pode "reduzir" a query...
1
2
3
4
5
SELECT Z1.CONTEUDOVALOR, Z1.CONTEUDODATA
FROM MS_INFOCOMPLEMENTAR Z
INNER JOIN MS_INFOCOMPLEMENTARVALOR Z1 ON Z1.INFOCOMPLEMENTAR = Z.HANDLE
   AND Z1.TIPOCAMPO IN (1,3)
WHERE Z.HANDLEORIGEM = 2




Obrigado Emerson,
Mas dessa forma não resolveu.
Consegui chegar ao resultado esperado da forma abaixo:

1
2
3
4
5
6
7
8
9
10
11
12
13
SELECT X.CONTEUDOVALOR Meta, B.CONTEUDODATA Periodo
FROM MS_INFOCOMPLEMENTARVALOR   X
INNER JOIN MS_INFOCOMPLEMENTARVALOR B ON B.INFOCOMPLEMENTAR IN (SELECT Z.HANDLE
                                                                       FROM MS_INFOCOMPLEMENTAR Z
                                                                       WHERE Z.HANDLEORIGEM = 2
                                                                       AND B.TIPOCAMPO = 3)
WHERE X.INFOCOMPLEMENTAR IN (SELECT Z.HANDLE
                                   FROM MS_INFOCOMPLEMENTAR Z
                                   WHERE Z.HANDLEORIGEM = 2)
AND X.TIPOCAMPO = 1
GROUP BY
      X.CONTEUDOVALOR,
      B.CONTEUDODATA
Responder

Gostei + 0

Utilizamos cookies para fornecer uma melhor experiência para nossos usuários, consulte nossa política de privacidade.

Aceitar