---
title: "Selectsatshjälp sökes!"
type: "forum-thread"
url: "https://www.webforum.nu/amne/databaser-sql/121583-selectsatshjälp-sökes"
topic: "Databaser & SQL"
topic_url: "https://www.webforum.nu/amne/databaser-sql"
author: "doggelito"
published: "2005-02-02T15:18:21.000Z"
updated: "2005-02-02T19:39:21.000Z"
replies: 8
views: 308
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/121583-selectsatshjälp-sökes"
---

# Selectsatshjälp sökes!

## #1 — doggelito, 2005-02-02T15:18Z

Behöver hjälp med att få till en selectsats. :)
Utifrån dessa tabeller vill jag få ut Produkt 1 samt Produkt 2.

Hur menar jag då?
Jo:
Produkt 1 samt Produkt 3 ingår i samma grupp och då ska den produkt som har 'Front' =1 väljas.
Produkt 2 ingår ej i en grupp och då ska den också väljas.
Hur ser en sådan sats ut?

```
Product
------------------------------
Id			Name
1			Produkten 1
2 			Produkten 2
3			Produkten 3

Product_Group
------------------------------
ProductId	GroupId		Front
1			1			1
3			1			0

Group
------------------------------
Id			Name
1			Grupp 1
```

dbms = sqlserver2000

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

## #2 — Jesper T, 2005-02-02T15:31Z

Något sådant hära:

```
SELECT p.name,g.name FROM Product as p 
LEFT JOIN product_group as pg ON p.id=pg.ProductId
INNER JOIN group as g ON pg.groupid=g.id
```

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

## #3 — doggelito, 2005-02-02T15:35Z

nje, utan att ha testat så kan jag säga att den kommer att hämta Produkt 3 också, det ska den inte göra! :)

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

## #4 — Nöff, 2005-02-02T15:53Z

Nåt sånt här kanske?

SELECT Id,Name FROM Product INNER JOIN Product_Group ON Product.Id=Product_Group.ProductId WHERE Product_Group.Front=1
UNION ALL
SELECT Id,Name FROM Product WHERE Id=2

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

## #5 — toha, 2005-02-02T16:11Z

```
SELECT
    Product.*
FROM 
    Product 
    INNER JOIN 
    Product_Group pg 
    ON 
    Product.Id=pg.ProductId
WHERE 
    pg.Front=1

UNION ALL

SELECT 
    Product.* 
FROM 
    Product 
    LEFT OUTER JOIN 
    Product_Group pg 
    ON 
    pg.ProductId = Product.Id
WHERE 
    pg.ProductId is null
```

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

## #6 — LarsG, 2005-02-02T16:16Z

```
SELECT Id,Name 
FROM Product 
where id in ( select  ProductId 
from product_group
WHERE front = 1)
UNION all
SELECT Id,Name 
FROM Product  p
WHERE not exists (
  select * 
     from productGroup
    where productid =  p.id)
```

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

## #7 — doggelito, 2005-02-02T19:17Z

Tackar grabbar! :bire
Både din toha och din LarsG verkar ge samma resultat vid en snabb titt på svaren jag får i analyzern så det är väl bara att välja vilken av dem man ska köra på. :)

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

## #8 — LarsG, 2005-02-02T19:36Z

Det beror på hur du vill att det skall fungera om en produkt ingår i flera grupper.

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

## #9 — doggelito, 2005-02-02T19:39Z

aha, på så vis.
svaret är nej, en produkt kan inte ingå i flera grupper.

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

---

Tråden på webben: https://www.webforum.nu/amne/databaser-sql/121583-selectsatshjälp-sökes
