---
title: "Join + groupby"
type: "forum-thread"
url: "https://www.webforum.nu/amne/databaser-sql/148411-join-groupby"
topic: "Databaser & SQL"
topic_url: "https://www.webforum.nu/amne/databaser-sql"
author: "tronez"
published: "2006-06-26T12:53:09.000Z"
updated: "2006-06-27T08:41:09.000Z"
replies: 8
views: 413
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/148411-join-groupby"
---

# Join + groupby

## #1 — tronez, 2006-06-26T12:53Z

Hej,

Försöker göra ett litet nyhetsscript i asp, men har  fastnat på en SQL sak.

**tabell nyheter**
id\| rubrik \| ingress \| nyhet \| start

**tabell nyheter_bilder**
id \| nyhet_id \| url \| 

Varje nyhet kan ha flera bilder kopplade till sig, men när jag visar alla nyheter i ett arkiv sp vill jag bara visa en bild.

tex;

Rubrik1 ------------ bild
Rubrik2 ------------ bild

```
SELECT n.rubrik, n.ingress, n.id as iid, n.start, d.url 
FROM nyheter AS n 
LEFT JOIN nyheter_bilder as d 
ON n.id = d.nyhet_id 
GROUP BY d.url, n.id, n.rubrik, n.ingress, n.start 
ORDER BY n.start DESC
```

Ovan är koden jag pulade fram men den skriver fortfarande ut alla poster som har fler än en bild

tex;

Rubrik1 ----- bild1
Rubrik1 ----- bild2
Rubrik1 ----- bild3
Rubrik2 ----- bild1

Någon som ser något som kan hjälpa mig på vägen?

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

## #2 — LarsG, 2006-06-26T13:06Z

Om det finns flera bilder, vilken vill du visa då?

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

## #3 — tronez, 2006-06-26T13:07Z

Den första räcker gott och väl. Det är en Accessdatabas omdet ar nån betydelse

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

## #4 — LarsG, 2006-06-26T14:13Z

Först med avseende på vad?

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

## #5 — tronez, 2006-06-26T15:35Z

Första id:et i nyheter_bilder tabellen ( inte nyhet_id , utan id )

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

## #6 — LarsG, 2006-06-26T15:39Z

Du menar lägst id?

```
SELECT n.rubrik, n.ingress, n.id as iid, n.start, d.url 
FROM nyheter AS n 
LEFT JOIN nyheter_bilder as d 
ON n.id = d.nyhet_id 
where d.id in 
 (select min(id)
    from nyheter_bilder as q
   where q.nyhet_id = d.nyhet_id)
ORDER BY n.start DESC
```

Du skall inte förutsätta att poster lagras i den ordning som dom stoppas in i tabellen.

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

## #7 — tronez, 2006-06-27T07:17Z

> **LarsG skrev:**
>
> Du menar lägst id?
> 
>
>
> ```
> SELECT n.rubrik, n.ingress, n.id as iid, n.start, d.url 
> FROM nyheter AS n 
> LEFT JOIN nyheter_bilder as d 
> ON n.id = d.nyhet_id 
> where d.id in 
>  (select min(id)
>     from nyheter_bilder as q
>    where q.nyhet_id = d.nyhet_id)
> ORDER BY n.start DESC
> ```
>
> 
> 
> Du skall inte förutsätta att poster lagras i den ordning som dom stoppas in i tabellen.

Den funkar ungefär som jag vill, men jag vill dock visa alla nyheter, öven de som inte har någon bild

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

## #8 — LarsG, 2006-06-27T08:09Z

```
SELECT n.rubrik, n.ingress, n.id as iid, n.start, d.url 
FROM nyheter AS n 
LEFT JOIN nyheter_bilder as d 
ON (n.id = d.nyhet_id 
and d.id in 
 (select min(id)
    from nyheter_bilder as q
   where q.nyhet_id = d.nyhet_id))
ORDER BY n.start DESC
```

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

## #9 — tronez, 2006-06-27T08:41Z

> **LarsG skrev:**
>
> ```
> SELECT n.rubrik, n.ingress, n.id as iid, n.start, d.url 
> FROM nyheter AS n 
> LEFT JOIN nyheter_bilder as d 
> ON (n.id = d.nyhet_id 
> and d.id in 
>  (select min(id)
>     from nyheter_bilder as q
>    where q.nyhet_id = d.nyhet_id))
> ORDER BY n.start DESC
> ```

Syntax error. in query expression 'n.id = d.nyhet_id and d.id in (select min(id) from nyheter_bilder as q where q.nyhet_id = d.nyhet_id)'.

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

---

Tråden på webben: https://www.webforum.nu/amne/databaser-sql/148411-join-groupby
