webForumDet fria alternativet

Top 50

6 svar · 220 visningar · startad av KalsongCesar

KalsongCesarMedlem sedan mars 2001338 inlägg
#1

Kan man lista de 50 senaste posterna i en databas och få bort dubletter av tex användare..

SELECT TOP 50 idxUser

jag vill få ut de unika top 50 som besöker min sida..

MVH jonas

JAreMANNENMedlem sedan aug. 20001 698 inlägg
#2

SELECT DISTINCT TOP 50 * FROM tabell borde väl fungera tycker jag...

KalsongCesarMedlem sedan mars 2001338 inlägg
#3

den funkar nästan som jag vill.. men när jag vill ha tex tre kolumner med
användare, artikelID och datum så funkar inte distinct.. den listar på som vanligt.. jag vill ju kunna sortera efter datum på de användare jag listar.

ngn som har en länk till en bra sida med sql kommandon?

LarsGMedlem sedan dec. 200012 465 inlägg
#4
select top 50 idxUser,arikelid,datum from t tq
where datum in (select max(datum)
                               from t where idxuser = tq.idxuser)
order by datum desc
KalsongCesarMedlem sedan mars 2001338 inlägg
#5

jag får inte till den.. den visar bara en post..
har även provat med att visa top 1 av datum

SELECT     TOP 10 idxUser, Datum
FROM         dbo.Statistik
WHERE     (Datum IN
                          (SELECT     TOP 1 datum
                            FROM          statistik
                            WHERE      idxUser = idxUser))
ORDER BY Datum DESC

tanken bord väl vara rätt..?

LarsGMedlem sedan dec. 200012 465 inlägg
#6

Njae, med din fråga så blir det bara ett svar därför att din subselect inte har någon koppling till den yttre selecten.

Har du testat den variant jag skrev med korrelationsnamnet?

select top 50 idxUser,arikelid,datum from dbo.statistik [b]tq[/b]
where datum in (select max(datum)
                               from dbo.statistik where idxuser = [b]tq.[/b]idxuser)
order by datum desc
KalsongCesarMedlem sedan mars 2001338 inlägg
#7

Tack.. det var ju klart. Att jag inte följde ditt råd från första början =)

Tack..

Genererad på 372 ms · cache AV · v20260730165559-full.f96bc7eb