---
title: "Disctinct och count"
type: "forum-thread"
url: "https://www.webforum.nu/amne/databaser-sql/21597-disctinct-och-count"
topic: "Databaser & SQL"
topic_url: "https://www.webforum.nu/amne/databaser-sql"
author: "erka"
published: "2001-09-07T10:52:00.000Z"
updated: "2001-09-07T11:58:00.000Z"
replies: 10
views: 200
page: 1
pages: 1
language: "sv-SE"
site: "webForum — webforum.nu"
rights: "Upphovsrätten till varje inlägg tillhör dess författare."
attribution: "Citera som: webForum, https://www.webforum.nu/amne/databaser-sql/21597-disctinct-och-count"
---

# Disctinct och count

## #1 — erka, 2001-09-07T10:52Z

Jag har en tabell som heter TblUser och den har 3 fält

TblUserID - räknare, primärnyckel
TblUserName - text
TblUserAlbumName - text

Jag vill skriva ut UserName distinct så jag bara får en av varje användare efter det ska den räkna hur många ggr den användaren finns tex

Kalle (4)
Bosse (2)
Lisa (1)

Hur skriver jag en sådan distinct och count satts, jag har sökt med inte funnit svar..tacksam

Permalänk: https://www.webforum.nu/p/21597

## #2 — erka, 2001-09-07T10:55Z

Det går väll försten inte, jag måste väll göra 2 sqlfrågor och sedan loopa igenom den i varandra så att säga

Permalänk: https://www.webforum.nu/p/352500

## #3 — erka, 2001-09-07T10:59Z

Löste det med att ta en å göra en nya sqlfråga inne i loopen..

Permalänk: https://www.webforum.nu/p/352501

## #4 — LarsG, 2001-09-07T11:01Z

Gör inte så.

```

select TblUserName,count(*) as antal
  from TblUser
 group by TblUserName
```

Varför använder du inte varchar för dessa kolumner

TblUserName - text
TblUserAlbumName - text

Permalänk: https://www.webforum.nu/p/352502

## #5 — @nders, 2001-09-07T11:02Z

```
select distinct tblUserName, count(tblUserName) from tblUser group by tblUserName
```

men jag förstår inte alls varför du har prefixet tbl till dina fältnamn. fld borde vara mer passande eller ännu hellre, något som vittnar om fältets typ.

Permalänk: https://www.webforum.nu/p/352503

## #6 — erka, 2001-09-07T11:17Z

@nders, faktiskt har jag inte de namnen, jag skrev bara några enkla rakt ur skallen så folk förstår typ :)

Tack killar, återkommer om jag misslyckas något mer

Permalänk: https://www.webforum.nu/p/352504

## #7 — erka, 2001-09-07T11:24Z

återkomm snabbt, förstår inte och vet inte om man kan skriva en fråga så här

Nu har jag samma tabell som jag använde innan och så har jag en tabell som heter TblFoto och den tabellen har

TblFotoID - räknare
TblUserID - tal (relation till TblUserID i TblUser)
TblFotoFile - text
TblFotoDesc - text

jag skickar TblUserName med en querystring till typ
showfotoalbums.asp?ShowUser=Pelle 

Där ska jag plocka fram alla album som har pelle som TblUserName (ifrån TblUser) och sen ska jag räkna hur många foton i det albumet som är aktuellt i loopen som hör till just det blUserID. Förstår ni

så det typ kan se ut så här

Pelles Album
\>\>Svartvita foton (34 st bilder)
\>\>Färgfoton (12 st bilder)

Jag vet hur man kan göra det om man tar 2 sql frågor, men går det att lösa med endast en ?

Permalänk: https://www.webforum.nu/p/352505

## #8 — erka, 2001-09-07T11:50Z

```
SQLStmt ="SELECT UserAlbums.AlbumID, UserAlbums.AlbumName, UserAlbums.AlbumContent, UserAlbums.AlbumUser, UserPictures.UserPicAlbumID, Count(UserPictures.UserPicID) FROM FotoGalleri, UserAlbums (LEFT JOIN UserPictures ON UserAlbums.AlbumID = UserPictures.UserPicAlbumID) WHERE UserAlbums.AlbumUser = '"& Request.Querystring("ShowUser") &"' group by UserPictures.UserPicID"
```

Det fungerar inte att göra så här, har jag tänkt helt käpprätt åt skogen eller är jag på rätt väg

Permalänk: https://www.webforum.nu/p/352506

## #9 — LarsG, 2001-09-07T11:51Z

```
select tblUserName,tblFotoDesc,count(*)
  from tblFoto join tblUsers
    on tblFoto.userid = tblUsers.userid
 group by tblUserName,TblFotoDesc
 order by tblUserName
```

Du får då upp en rad för varje unik kombination av tblUserName och tblFotoDesc, så om du vill ha den utskriften du visade, så får du själv hålla reda på när tblUserName byter värde.

Permalänk: https://www.webforum.nu/p/352507

## #10 — LarsG, 2001-09-07T11:56Z

Alla kolumner i select-listan, som inte ingår i en aggregatfunktion, måste vara med i group by.

Så om du samtidigt vill ha upp en massa information om varje foto och även totala antalet foton så är det kanske något dylikt detta du vill ha

```

select tblFoto.*, (select count(*) from tblFoto where tblUserId = t.tblUserid)
from tblFoto t
```

Permalänk: https://www.webforum.nu/p/352508

## #11 — erka, 2001-09-07T11:58Z

Tackar tackar, ska leka lite nu

Permalänk: https://www.webforum.nu/p/352509

---

Tråden på webben: https://www.webforum.nu/amne/databaser-sql/21597-disctinct-och-count
