---
title: "Distinct Count??"
type: "forum-thread"
url: "https://www.webforum.nu/amne/databaser-sql/56435-distinct-count"
topic: "Databaser & SQL"
topic_url: "https://www.webforum.nu/amne/databaser-sql"
author: "Asa"
published: "2002-10-18T20:13:23.000Z"
updated: "2002-10-18T23:55:01.000Z"
replies: 21
views: 433
page: 1
pages: 2
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/56435-distinct-count"
---

# Distinct Count??

_Sida 1 av 2._

## #1 — Asa, 2002-10-18T20:13Z

Jag har en tabell som heter visad. I den finns fälten 

id-räknare
bannerId - tal
datum - datum/tid

För varje gång en banner visas sparas datumet och dess unika id till databasen!

Jag vill nu räkna hur många dagar som en banner har varit aktiv. Hur gör jag?

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

## #2 — @nders, 2002-10-18T20:37Z

Jag förstår inte vad frågan har med count att göra? Det borde väl stämma om man tar första visningen och räknar tidsskillnad?

```
SELECT TOP 1 *, DATEDIFF('d', Now(), datum) AS Livetid FROM visad WHERE bannerId = 1 ORDER BY datum ASC
```

Jag antar att du använder Access.

Mvh,

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

## #3 — LarsG, 2002-10-18T20:40Z

```
select count(*) from (select distinct year(datum),month(datum),day(datum) from visad where bannerid = 4711)
```

Har jag förstått?

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

## #4 — Asa, 2002-10-18T20:47Z

Hur skriver jag ut detta sen då LarsG?

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

## #5 — @nders, 2002-10-18T20:48Z

Ange index 0 för den icke namngivna kolumnen, eller ge den ett alias i SQL-frågan.

Mvh,

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

## #6 — Asa, 2002-10-18T20:50Z

Hmm! Okej!

EN bättre förklaring av allt kanske?:

```
id	BannerId	datum
137	1	2002-10-16
138	1	2002-10-16
139	1	2002-10-16
140	1	2002-10-16
141	1	2002-10-18
142	1	2002-10-18
143	1	2002-10-18
```

Den ska bland dessa poster räkna till 2?

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

## #7 — @nders, 2002-10-18T20:53Z

Du vill alltså visa antalet unika dagar som en viss banner visats? Då så.

```
SELECT COUNT(*) AS Antal FROM (SELECT DISTINCT datum FROM visad WHERE bannerId = 1)
```

Jag antar fortfarande att du använder Access. Om du använder någon annan dbms borde du kunna skriva

```
SELECT COUNT (DISTINCT datum) AS Antal FROM visad WHERE bannerId = 1
```

Mvh,

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

## #8 — Asa, 2002-10-18T20:58Z

Detta:

\<%Set Dagar=Conn.Execute("SELECT COUNT(\*) AS Antal FROM (SELECT DISTINCT datum FROM visad WHERE bannerId=" & Request.QueryString("bannerId"))%\>

Antal dagar: \<%=Dagar("antal")%\>

Får felmeddelandet:

Syntaxfel i FROM-instruktion.

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

## #9 — @nders, 2002-10-18T21:00Z

Du saknar slutparentes runt din distinct-fråga.

```
<%Set Dagar=Conn.Execute("SELECT COUNT(*) AS Antal FROM (SELECT DISTINCT datum FROM visad WHERE bannerId=" & Request.QueryString("bannerId") & ")")%>
```

Mvh,

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

## #10 — Asa, 2002-10-18T21:02Z

Hmm - den visar 95 som antal :/

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

## #11 — @nders, 2002-10-18T21:03Z

Lagrar du tid också i datumkolumnen? Då kan det nog bli så, eftersom det blir väldigt många olika unika.

Mvh,

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

## #12 — Asa, 2002-10-18T21:04Z

Det kan nog vara så :/

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

## #13 — Asa, 2002-10-18T21:05Z

Jag vill inte ha med tiden alls!

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

## #14 — @nders, 2002-10-18T21:05Z

Det borde väl gå att lösa genom att använda DatePart() i din SELECT DISTINCT-fråga.

Lämnas som uppgift till läsaren. ;)

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

## #15 — Asa, 2002-10-18T21:06Z

Okej tackar - ska testa lite!

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

## #16 — Asa, 2002-10-18T21:11Z

Men med DatePart kan man väl inte hämta hela datumet me år, mån och dag?

Ooops! Nu posta jag ett nytt inlägg  :/ Skulle ha uppdaterat det förra!

Jag skrev SELECT DISTINCT Left(datum,10) .....
Det verka funka men är det säkert att det funkar jämt?

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

## #17 — @nders, 2002-10-18T21:17Z

Hmm. Nej, det kanske du har rätt i.
Och Left-varianten är inte säkert att den funkar jämt. Jag kommer dock inte på någon fantastisk lösning just nu. :/

Mvh,

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

## #18 — Asa, 2002-10-18T21:18Z

Okej! Tack för all hjälp! Men jag har det med Left kvar! Är dock bara en grej för att se antal dagar bannern varit aktiv!

<http://www.gruvsjo.com/default.asp?part=hyr&bannerId=1>

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

## #19 — LarsG, 2002-10-18T21:28Z

Mitt förslag då?

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

## #20 — Asa, 2002-10-18T22:12Z

Det funkade inte eller hade jag glömt nåt? Skriv allt som behövs för att skriva ut det om du vill!

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

---

Tråden på webben: https://www.webforum.nu/amne/databaser-sql/56435-distinct-count  
Nästa sida: https://www.webforum.nu/amne/databaser-sql/56435-distinct-count/page2.md
