2 CONSULTA EM 1

HOSTTOTA 23/04/2013 17:35:56
#422387
como eu faço para pegar um resultar de uma consulta sem exibir
tipo SELECT top 25 RANK() OVER (order by LEV desc) ......

vai me trazer 25 primeiros em ordem

so que nao quero que mostre todos só mostre da pessoa que está logado

tipo id: Rank :

KERPLUNK 23/04/2013 18:31:30
#422393
Select * from tabela where nome = [ô]nome do cara logado[ô]
HOSTTOTA 24/04/2013 10:15:04
#422429
SELECT (select top 100 ID as Nome from auth_table where AuthType <> 0 order by LoginTime desc , LoginCounter desc, PlayTime desc
) as Nome FROM auth_table
WHERE Nome = osmar[ô]

então ja fiz mais nao me traz retorno final

se por so select com top 100
me traz corretamente, mais com 2 consultas não.
KERPLUNK 24/04/2013 12:11:51
#422438
E porque você precisa de duas consultas para a mesma tabela?? Faça assim:

select top 100 ID as Nome from auth_table where AuthType <> 0 and Id =[ô]osmar[ô] order by LoginTime desc , LoginCounter desc, PlayTime desc


Uma dica: Pare de [Ô]pensar em código[Ô], não é esse o caminho. Pense em conceito, pense o que você quer fazer.
HOSTTOTA 24/04/2013 12:39:24
#422442
mais ai valor original do top altera

tipo

select top 100 ID as Nome from auth_table where AuthType <> 0 order by LoginTime desc , LoginCounter desc, PlayTime desc

rank = 4

na sua
select top 100 ID as Nome from auth_table where AuthType <> 0 and Id =[ô]osmar[ô] order by LoginTime desc , LoginCounter desc, PlayTime desc

rank = 1
porque so tem id = osmar

preciso mostrar so rank do osmar mais entre os top 100 que vai trazer.
MJAC 24/04/2013 23:46:55
#422463
Tenta assim:

  SELECT * FROM (
select top 100 ID as Nome from auth_table
where AuthType <> 0
order by LoginTime desc , LoginCounter desc, PlayTime desc
) as T
WHERE Nome = [ô]osmar[ô]


Terá a lista de todos os [Ô]osmar[Ô] que estiverem entre os 100 primeiros
HOSTTOTA 25/04/2013 08:03:07
#422470
questão não é essa MJAC
eu preciso trazer todos 100 primeiros Usuário
e ver qual colocação está o osmar
e mostrar colocação dele se ele e 20 ou 50
MJAC 05/05/2013 01:39:16
#422961
Entendo, neste caso use:

  
SELECT top 1 * FROM (
select top 100 ROW_NUMBER() as Posicao, ID as Nome from auth_table
where AuthType <> 0
order by LoginTime desc , LoginCounter desc, PlayTime desc
) as T
WHERE Nome = [ô]osmar[ô]


isso lhe dará o osmar e sua classificação caso ele esteja entre os 100 primeiros, caso queira que ele traga a posição mesmo se ele não estiver entre os 100 primeiros, remova o top 100 o select interno.
HOSTTOTA 06/05/2013 10:17:53
#422988
erro ROW_NUMBER()
Tópico encerrado , respostas não são mais permitidas