Ir para conteúdo

POWERED BY:

Arquivado

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

Cesão

Select em duas tabelas

Recommended Posts

Olá amigos, tenho um problema assim. Meu código funciona perfeitamente... ele unifica as duas tabelas e ordena por data, normal.

SQL = "SELECT ID_EVENTO as ID, TXT_TITULO, DAT_INICIO as DATA, 1 AS identificacao FROM TBL_EVENTOS UNION "_
	& " SELECT ID_NOTICIA as ID, TXT_TITULO, DAT_CREATED as DATA, 2 AS identificacao FROM TBL_NOTICIAS "_
	& " ORDER BY DATA DESC"

O problema é que quero que ele ordene por data, mas apenas os eventos que JÁ passaram, daí tentei fazer assim:

 

SQL = "SELECT ID_EVENTO as ID, TXT_TITULO, DAT_INICIO as DATA, 1 AS identificacao FROM TBL_EVENTOS UNION "_
	& " SELECT ID_NOTICIA as ID, TXT_TITULO, DAT_CREATED as DATA, 2 AS identificacao FROM TBL_NOTICIAS "_
	& " WHERE DATA <= GETDATE() ORDER BY DATA DESC"

O problema é que quando faço o WHERE DATA <= GETDATE(), ele diz que DATA é uma coluna inválida. já tentei colocar DAT_INICIO e DAT_CREATED nesse WHERE, mas daí ele diz que nao existe tbm.

 

Alguém pode me ajudar?

Compartilhar este post


Link para o post
Compartilhar em outros sites

Ola,

O problema esta no seu where.

 

SELECT ID_EVENTO as ID, TXT_TITULO, DAT_INICIO as DATA, 1 AS identificacao

FROM TBL_EVENTOS

where dat_inicio < getdate()

UNION

SELECT ID_NOTICIA as ID, TXT_TITULO, DAT_CREATED as DATA, 2 AS identificacao FROM TBL_NOTICIAS

where dat_created < getdate()

 

ORDER BY DATA /* NAO TENHO CERTEZA SE FUNCIONA ASSIM */

Compartilhar este post


Link para o post
Compartilhar em outros sites

Valeu Karepa!! É isso mesmo. eu estava tentando colocar o WHERE fora das tabelas né? por isso ele dizia que nao existiam. Valeu cara.

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.