Seguinte pessoal... Tenho um monstrinho aqui, para validar...
vamos supor que a tabela esteja, atualmente, da seguinte forma:
--C1 C2 C3 C4 C5 C6 C7 C8 C9 C10 C11 CE
1 DE DE DE DE DE DE DE DE DE DE DE DCE
2 VA VA VA VA VA VA VA VA VA VA VA VACE1
3 VA VA VA VA VA VA VA VA VA VA VA VACE2
4 VA VA VA VA VA VA VA VA VA VA VA VACE3
5 VA VA VA VA VA VA VA VA VA VA VA VACE4
6 VA VA VA VA VA VA VA VA VA VA VA VACE5
Onde "C" corresponde a coluna, "DE" à descrição e "VA" ao valor de cada coluna. CE é Caso Especial, DCE Descrição Caso Especial, VACE Valor Caso Especial.
Os valores não são iguais. A tabela possui 1500+ colunas e tem cerca de 13000 registros (linhas[rows])
Preciso fazer um select de forma que, a tabela, fique da seguinte forma, para que eu possa exportar:
-----C1 C2 C3
1 DEC1 VAC1:2 VACE1
2 DEC2 VAC2:2 VACE1
... ... ... ...
11 DEC11 VAC11:2 VACE1
Caso não tenham entendido:
Eu preciso pegar 1 linha, pegar cada valor daquela linha e jogar numa coluna (C2). Essa linha precisa corresponder ao valor VACE correspondente (C3), para que eu possa jogar VACE1 EM TODAS AS LINHAS. E preciso pegar a descrição de cada coluna (C1), que fica, na tabela original, na segunda linha.
O que eu fiz foi:
SELECT * from TP INNER JOIN (SELECT COD, MAX(SUBMITDATE) AS SUBMITDATE FROM TP` AS XX GROUP BY COD) AS ULTIMOS ON
(TP.SUBMITDATE = ULTIMOS.SUBMITDATE and TP.COD = ULTIMOS.COD)
WHERE TP.SUBMITDATE IS NOT NULL
and tp.COD = <CODIGO_ESPECIFICO>
Esse select retorna uma linha(C2), os nomes das colunas (C1), que eu exporto como Excel, Copio, Colo Especial (Transpor), e faço algumas alterações (C3).
Mas, no momento, vou precisar fazer isso 13085 vezes, configurei uma macro....
Mas gostaria de saber se tem uma forma única, mais fácil, de fazer isso...
Grato
Editado por quintelab Removido descrição do tópico
Pergunta
Henrique d'Almeida
Seguinte pessoal... Tenho um monstrinho aqui, para validar...
vamos supor que a tabela esteja, atualmente, da seguinte forma:
--C1 C2 C3 C4 C5 C6 C7 C8 C9 C10 C11 CE
1 DE DE DE DE DE DE DE DE DE DE DE DCE
2 VA VA VA VA VA VA VA VA VA VA VA VACE1
3 VA VA VA VA VA VA VA VA VA VA VA VACE2
4 VA VA VA VA VA VA VA VA VA VA VA VACE3
5 VA VA VA VA VA VA VA VA VA VA VA VACE4
6 VA VA VA VA VA VA VA VA VA VA VA VACE5
Onde "C" corresponde a coluna, "DE" à descrição e "VA" ao valor de cada coluna. CE é Caso Especial, DCE Descrição Caso Especial, VACE Valor Caso Especial.
Os valores não são iguais. A tabela possui 1500+ colunas e tem cerca de 13000 registros (linhas[rows])
Preciso fazer um select de forma que, a tabela, fique da seguinte forma, para que eu possa exportar:
-----C1 C2 C3
1 DEC1 VAC1:2 VACE1
2 DEC2 VAC2:2 VACE1
... ... ... ...
11 DEC11 VAC11:2 VACE1
Caso não tenham entendido:
Eu preciso pegar 1 linha, pegar cada valor daquela linha e jogar numa coluna (C2). Essa linha precisa corresponder ao valor VACE correspondente (C3), para que eu possa jogar VACE1 EM TODAS AS LINHAS. E preciso pegar a descrição de cada coluna (C1), que fica, na tabela original, na segunda linha.
O que eu fiz foi:
SELECT * from TP INNER JOIN (SELECT COD, MAX(SUBMITDATE) AS SUBMITDATE FROM TP` AS XX GROUP BY COD) AS ULTIMOS ON
(TP.SUBMITDATE = ULTIMOS.SUBMITDATE and TP.COD = ULTIMOS.COD)
WHERE TP.SUBMITDATE IS NOT NULL
and tp.COD = <CODIGO_ESPECIFICO>
Esse select retorna uma linha(C2), os nomes das colunas (C1), que eu exporto como Excel, Copio, Colo Especial (Transpor), e faço algumas alterações (C3).
Mas, no momento, vou precisar fazer isso 13085 vezes, configurei uma macro....
Mas gostaria de saber se tem uma forma única, mais fácil, de fazer isso...
Grato
Editado por quintelabRemovido descrição do tópico
Link para o comentário
Compartilhar em outros sites
0 respostass a esta questão
Posts Recomendados
Participe da discussão
Você pode postar agora e se registrar depois. Se você já tem uma conta, acesse agora para postar com sua conta.