---
title: "SQL-fråga som tar med även tomma fält."
type: "forum-thread"
url: "https://www.webforum.nu/amne/databaser-sql/111378-sql-fråga-som-tar-med-även-tomma-fält"
topic: "Databaser & SQL"
topic_url: "https://www.webforum.nu/amne/databaser-sql"
author: "solbulle"
published: "2004-09-11T23:15:35.000Z"
updated: "2004-09-12T11:51:01.000Z"
replies: 2
views: 236
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/111378-sql-fråga-som-tar-med-även-tomma-fält"
---

# SQL-fråga som tar med även tomma fält.

## #1 — solbulle, 2004-09-11T23:15Z

Jag har en fråga som plockar ut varje dags försäljning (om det finns någon) av angivna produkter på en angiven kundgrupp listat per kund.
Nu vill jag göra min fråga än mer dynamisk så att man skall även lista de angivna kunderna även fast de kanske inte köpt produkten, hur kan jag lösa det tro?
Jag är dock osäker på att det verkligen går att göra direkt i sql-frågan.
Annars är tips på hur jag kan lösa det ändå tacksamt.

Jag utgår från denna SQL-fråga (förenklad från orginalet, men det nödvändiga är kvar.):

```
select @SUBSTRING(tblORDER.LEVVECKA,5,3), LEVDAG, tblARTIKEL.ARTNR, tblARTIKELDATA.ARTNAMN, tblORDER.ordtyp, SUM(ANTAL),
 SUM(antal*pris), tblKUND.kundnr, tblKEDJA ,tblKUND.kndgrp
    from tblORDER, ORA, tblARTIKEL, tblARTIKELDATA, DPL, tblKUND, KEDJA
     where tblORDER.ORDNR = ORA.ORDNR 
    and ORA.ARTNR = tblARTIKEL.ARTNR and ORA.ARTNR = tblARTIKELDATA.ARTNR
    and tblORDER.KNDNR = tblKUND.KUNDNR and tblKUND.KEDJA = tblKEDJA.KEDJA 
    and (tblARTIKEL.ARTNR = '1234' or tblARTIKEL.ARTNR = '5678') and tblORDER.LEVVECKA = '2004-35'
    group by  tblORDER.LEVVECKA, LEVDAG, tblARTIKEL.ARTNR, osv
```

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

## #2 — @nders, 2004-09-12T05:23Z

Jo, det går bra att lösa om du använder outer joins. Mitt förslag är att du skriver om SQL-frågan till join-syntax, och knyter in kundtabellen med en outer join. Något sånt här skulle det eventuellt kanske kunna se ut, dock med reservation för att det är för tidigt på morgonen. ;-)

```
select @SUBSTRING(tblORDER.LEVVECKA,5,3), LEVDAG, tblARTIKEL.ARTNR, tblARTIKELDATA.ARTNAMN, tblORDER.ordtyp, SUM(ANTAL),
 SUM(antal*pris), tblKUND.kundnr, tblKEDJA ,tblKUND.kndgrp
    FROM tblORDER 
	INNER JOIN ORA ON tblORDER.ORDNR = ORA.ORDNR
	INNER JOIN tblARTIKEL ON ORA.ARTNR = tblARTIKEL.ARTNR
	INNER JOIN tblARTIKELDATA ON ORA.ARTNR = tblARTIKELDATA.ARTNR
	LEFT JOIN tblKUND ON tblORDER.KNDNR = tblKUND.KUNDNR
	INNER JOIN tblKEDJA ON tblKUND.KEDJA = tblKEDJA.KEDJA
    WHERE
	(tblARTIKEL.ARTNR = '1234' or tblARTIKEL.ARTNR = '5678') and tblORDER.LEVVECKA = '2004-35'
    GROUP BY  tblORDER.LEVVECKA, LEVDAG, tblARTIKEL.ARTNR, osv
```

Vad är det för dbms du använder förresten?

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

## #3 — solbulle, 2004-09-12T11:51Z

Jag tackar för svaret och försöker få till det.

Jag använder SQL-Base (Gupta)

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

---

Tråden på webben: https://www.webforum.nu/amne/databaser-sql/111378-sql-fråga-som-tar-med-även-tomma-fält
