Select Sql Server 2000 Union

Bom dia Pessoal,

Esse é o meu select

            SELECT
		TE.CLIMINARES, LI.RLIMINARES, SELECIONADO = 'ü'
	FROM 
		TLIMINARES LI 
	INNER JOIN 
		#TEMPLIMINARES TE 
	ON 
		TE.CLIMINARES = LI.CLIMINARES

	UNION

	select climinares, rliminares, selecionado = '' from tliminares 

O resultado é o seguinte

1 Teste1
1 Teste1 ü
2 Teste2
2 Teste2 ü
3 TESTE3

como vcs viram ele repete o teste1 e o teste2…
Eu gostaria de retornar apenas o teste1 e teste2 onde o selecionado = ‘ü’ e o teste3 viria selecinado = ‘’

Alguém pode me ajudar???

Att,

Allan Furlani

1 - Leia http://guj.com.br/java/50115-voce-e-novo-no-guj-vai-criar-um-topico-e-colar-seu-codigo-fonte-leia-aqui-antes-por-favor. Tente usar o distinct.

       SELECT DISTINCT
            TE.CLIMINARES, LI.RLIMINARES, SELECIONADO = 'ü' 
       FROM 
            TLIMINARES LI 
       INNER JOIN 
            #TEMPLIMINARES TE 
       ON 
            TE.CLIMINARES = LI.CLIMINARES 

UNION 

      SELECT DISTINCT
                 CLIMINARES, RLIMINARES SELECIONADO = ' ' ]
       FROM 
                 TLIMINARES

Vlw pela dica sobre a formatação…

então mesmo com o distinct ele continua a mesma cosia

Vlw pela ajuda…

Consegui fazer de uma outra forma

eu fiz o seguinte
Criei uma outra tabela auxiliar e inseri todos os registros da tabela.
E a outra tabela continha apenas os registros com o selecionado = 'ü’
Fiz um UPDATE na tabela Auxiliar de selecionado = ‘’ para selecionado = ‘ü’ onde contenha o código nas duas tabelas…

                INSERT INTO #TEMPLIMINARESAUX (CLIMINARES, RLIMINARES)
		SELECT CLIMINARES, RLIMINARES FROM TLIMINARES

		UPDATE #TEMPLIMINARESAUX 
		SET #TEMPLIMINARESAUX.SELECIONADO  = #TEMPLIMINARES.SELECIONADO
		FROM #TEMPLIMINARESAUX, #TEMPLIMINARES
		WHERE #TEMPLIMINARESAUX.CLIMINARES = #TEMPLIMINARES.CLIMINARES

Ou seja…

mudou completamente da idéia inicial e ficou uma gambiarra mortal…
Mas funcionou!!!
caso eu pense em outra coisa eu posto… ow se alguém tiver outra idéia…

Vlww!!!

Desculpa ir chegando já depois que você resolveu, mas… estou com um palpite e veja se estaria correto: você tem a tabela TLIMINARES quer verificar se há registros nela que possuam ou não registros relacionados na #TEMPLIMINARES, é isso? Se sim, usando um select só com OUTER JOIN já resolveria… ficaria assim:

select LI.CLIMINARES
,        LI.RLIMINARES
,        TE.CLIMINARES
FROM TLIMINARES LI
OUTER LEFT JOIN #TEMPLIMINARES TE
ON LI.CLIMINARES = TE.CLIMINARES

No caso, se existir um registro em TLIMINARES que não possua correspondente em #TEMPLIMINARES, o campo TE.CLIMINARES declarado no select exibirá nulo.
Foi o que entendi do seu problema. Desculpe se não tiver nada a ver…