---
title: "Ännu en distinct"
type: "forum-thread"
url: "https://www.webforum.nu/amne/asp/50495-ännu-en-distinct"
topic: "ASP"
topic_url: "https://www.webforum.nu/amne/asp"
author: "i-or"
published: "2002-08-15T23:42:14.000Z"
updated: "2002-08-16T14:24:38.000Z"
replies: 4
views: 252
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/asp/50495-ännu-en-distinct"
---

# Ännu en distinct

## #1 — i-or, 2002-08-15T23:42Z

Jag har sökt och försökt och försökt men kom inte i rätt i ett virrvarr av GROUP BY osv.

Min SQL-sats ser ut så här:

```
Show = "SELECT DISTINCT DatePart('ww', Dat, 2, 2), Year(Dat) FROM Diary ORDER BY Year(Dat) DESC, DatePart('ww', Dat, 2, 2) DESC"
```

 

Jag behöver även få med Month(Dat), men denna ska inte ingå i DISTINCT. Därför bör jag använda GROUP BY istället för DISTINCT men jag har aldrig fattat hur den fungerar riktigt så kan någon snäll själ skriva om min SQL-sats skulle jag vara väldigt tacksam.

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

## #2 — LarsG, 2002-08-15T23:48Z

> Jag behöver även få med Month(Dat), men denna ska inte ingå i DISTINCT.

Det går inte ihop. Distinct gäller för alla kolumner. 

Kan du visa lite data och vad du förväntar dig för resultat.

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

## #3 — i-or, 2002-08-16T00:05Z

Jag vet att DISTINCT gäller för alla kolumner, därför misstänker jag att jag istället ska använda GROUP BY.

SQL-satsen ska ge exakt samma resultat (alla unika veckonummer och år, tex v.42 år 2002) som den i mitt första inlägg, med den skillnaden att jag senare ska kunna komma åt även Month(Dat). Men någon påverkan i SQL-satsen ska den inte göra.

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

## #4 — toha, 2002-08-16T06:55Z

Jag är inte säker på exakt hur du vill få ut datan men om jag har uppfattat det riktigt så har jag gjort en liknande procedure en gång i tiden:

```
SELECT
	YEAR(d_date_arrival_101) n_year,
	DATEPART(wk, d_date_arrival_101) n_week,
	COUNT(n_id_101) n_count
FROM 
	pending_results_101 
WHERE
	s_customer_no_1_101 = @sCustomerId
GROUP BY 		
	YEAR(d_date_arrival_101),
	DATEPART(wk, d_date_arrival_101)
ORDER BY
	n_year,
	n_week
```

Hoppas det är något du kan få nytta av.

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

## #5 — i-or, 2002-08-16T14:24Z

Jo, jag har försökt med något liknande, men med denna SQL-sats:

```
Show = "SELECT DatePart('ww', Dat, 2, 2), Year(Dat), Month(Dat) FROM Diary GROUP BY DatePart('ww', Dat, 2, 2), Year(Dat) ORDER BY Year(Dat) DESC, DatePart('ww', Dat, 2, 2) DESC
```

 

fick jag detta felmeddelande:

"Microsoft JET Database Engine fel '80040e21' 
Du försökte köra en fråga med en mängdfunktion som inte innehöll det angivna uttrycket 'Month(Dat)'."

EDIT: Nu fick jag det att funka, med t ex min(Month(Dat)) funkade det finfint. Tack alla för hjälpen!

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

---

Tråden på webben: https://www.webforum.nu/amne/asp/50495-ännu-en-distinct
