Fórum Select com Union #221024

18/03/2004

0

Qual o problema com esse script?

SELECT CODBARRA, DESCRICAO AS DESCRNF, PRECOPROMO AS PRECOVEND, DATAATE FROM CDPROMOCAOITEM WHERE DESCRICAO LIKE ´AB¬´ UNION
SELECT CODBARRA, DESCRNF, PRECOVEND FROM CDPRODUTOS WHERE DESCRNF LIKE ´AB¬´

Obrigado


Ninjapan

Ninjapan

Responder

Posts

18/03/2004

Lucas Silva

qual o erro que está dando?


Responder

Gostei + 0

18/03/2004

Blackjaguar

Bom,

De cara já dá para perceber que o primeiro SQL tá retornando 4 campos enquanto que o segundo só tá retornando 3.

Para que uma Union funcione, os campos das consultas devem ser compatíveis entre si. Não esquencendo da ordem.


Responder

Gostei + 0

18/03/2004

Ninjapan

Bom, De cara já dá para perceber que o primeiro SQL tá retornando 4 campos enquanto que o segundo só tá retornando 3. Para que uma Union funcione, os campos das consultas devem ser compatíveis entre si. Não esquencendo da ordem.


Se tirar o DATAATE retorna o seguinte

Invalid command
Data type unknown

Por acaso os campos devem ter o mesmo tipo e tamanho para funcionarem? Se for isso, a mensagem não teria sentido.

Obrigado


Responder

Gostei + 0

18/03/2004

Blackjaguar

É profundamente desejável que os campos sejam do mesmo tipo.
Mesmo que eles não sejam vc pode forçar a conversão para que fiquem do mesmo tipo.

No SQL vc usaria a função CONVERT(....)


Responder

Gostei + 0

18/03/2004

Paulo_amorim

Olá

vc nao precisa TIRAR campos da sua Query soh pra igualar no UNION...
faça ao contrário:

EX:
SELECT campo1, campo2, campo3 FROM tab1
UNION
SELECT campo1, campo2, ´´ campo3 FROM tab2


Perceba que o campo3 NAO EXISTE na tab2, mas passando vazio com LABEL campo3 ele aceitará.

Mas os campos não precisam ser compatíveis para entrarem no UNION

Até+
Paulo_Amorim


Responder

Gostei + 0

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

Aceitar