Ir para conteúdo

POWERED BY:

Arquivado

Este tópico foi arquivado e está fechado para novas respostas.

Pensa

[Resolvido] Como juntar 3 ou mais selects?

Recommended Posts

Quando tento executar o sql:

 


sql = "(select ID_noticia as ID, titulo_noticia as titulo, data_noticia as data, status_noticia as status, 'Notícia' as tipo from NOTICIAS where ID_noticia > 0)"
sql = sql & " UNION ALL"
sql = sql & "(select ID_artigo as ID, titulo_artigo as titulo, data_artigo as data, status_artigo as status, 'Artigos' as tipo from ARTIGOS where ID_artigo > 0)"
sql = sql & " UNION ALL "
sql = sql & "(select ID_video as ID, titulo_video as titulo, data_video as data, status_video as status, 'Videos' as tipo from VIDEOS where ID_video > 0)"
sql = sql & " order by data desc "

Dá o seguinte erro:

 

Implicit conversion of varchar value to varchar cannot be performed because the collation of the value is unresolved due to a collation conflict.

Se eu tiro um dos "UNION ALL" funciona... pergunto: O Union All funciona para juntar apenas dois selects? como faço para juntar 3 ou mais?

Grato.

Renan

Compartilhar este post


Link para o post
Compartilhar em outros sites

tente usar o INNER JOIN...

Compartilhar este post


Link para o post
Compartilhar em outros sites

Mas o INNER JOIN não é usado apenas se as tabelas tem algum tipo de relação uma com a outra? nesse caso a Tabela de artigos não tem relação alguma com a de Notícias... de qualquer forma vou fazer alguns testes com inner join e ver no que dá..

Compartilhar este post


Link para o post
Compartilhar em outros sites

O UNION ALL deveria funcionar pelo que sei não tem limite.

 

você disse que com dois UNION funciona qual seria estes dois? Noticias e Artigos?

 

você rodou o select que da erro, qdo adicionado, em separado?

Compartilhar este post


Link para o post
Compartilhar em outros sites

ele gera algum erro ???

Compartilhar este post


Link para o post
Compartilhar em outros sites

Só para registro, resolvi meu problema. Realente, o UNION consegue sim juntar ilimitadas tabelas o que estava acontecendo é que depois de algumas migrações de servidor, o banco de dados ficou com uma das tabelas com a collation diferente do resto, e daí o Union dava algum conflito por o título de artigo estar com um colletion e o título de notícia estar com outro. Confusão... resolvido. Obrigado aos que ajudaram.

Compartilhar este post


Link para o post
Compartilhar em outros sites

ok, beleza...

Compartilhar este post


Link para o post
Compartilhar em outros sites

×

Informação importante

Ao usar o fórum, você concorda com nossos Termos e condições.