---
title: "Knivig SQL-sträng"
type: "forum-thread"
url: "https://www.webforum.nu/amne/databaser-sql/73033-knivig-sql-sträng"
topic: "Databaser & SQL"
topic_url: "https://www.webforum.nu/amne/databaser-sql"
author: "Pikkenix"
published: "2003-04-03T11:07:44.000Z"
updated: "2003-04-03T16:28:22.000Z"
replies: 7
views: 270
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/73033-knivig-sql-sträng"
---

# Knivig SQL-sträng

## #1 — Pikkenix, 2003-04-03T11:07Z

Kan någon hjälpa mig med att utforma en SQL sträng till detta, står helt still i skallen på mig...

Tabeller:

ARTIKLAR
\-----
pris, artikelid

ORDERS
\----
orderid, datum, betalning

ORDERARTIKLAR
\----
orderid, artikelid

KUNDER
\----
fnamn, enamn, epost

Det jag vill få fram i mitt recordset är följande:

orders.orderid, orders.datum, orders.betalning, SUM(artiklar.pris), kunder.fnamn, kunder.enamn, kunder.epost

Tacksam för all hjälp jag kan få.

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

## #2 — OveRRidE, 2003-04-03T11:11Z

Felpostad, flyttas till SQL. Det här har inget med ASP eller VBScript att göra. 

MVH
OveRRidE

moderator, webForum

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

## #3 — Sebbe, 2003-04-03T11:14Z

```
strSQL = "SELECT orders.orderid, " &_
"orders.datum, " &_
"orders.betalning, " &_
"SUM(artikel.pris) AS pris, " &_
"kunder.fnamn, " &_
"kunder.enamn, " &_
"kunder.epost " &_
"FROM orders, artikel, kunder " &_
"WHERE orders.orderid = artikel.artikelid " &_
"AND orders.orderid = " & Request.QueryString("id")
```

Något sånt?
Fel forum för övrigt. **/red** OveRRidE han påpeka det ;)

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

## #4 — Pikkenix, 2003-04-03T11:51Z

Problemet är att SUM(pris) som ligger i artikar måste gå via orderartikel tabellen, alltså måste jag använda nestade tabeller elelr join på något sätt..

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

## #5 — Pikkenix, 2003-04-03T12:10Z

Denna sqlsats använder jag nu:

"SELECT orders.orderid, orders.datum, orders.betalning, kunder.fnamn, kunder.enamn, kunder.epost, kunder.kundID , SUM(artiklar.pris) as priset FROM orders, kunder, artiklar WHERE orders.status = 0 AND orders.kundid = kunder.kundID AND artiklar.artikelid = (SELECT orderartikel.artikelid FROM orderartikel WHERE orderartikel.artikelid = orders.orderid)"

Men då får jag följande fel:
Feltyp:
Microsoft OLE DB Provider for ODBC Drivers (0x80040E14)
\[Microsoft\]\[Drivrutin för ODBC Microsoft Access\] Du försökte köra en fråga med en mängdfunktion som inte innehöll det angivna uttrycket 'orderid'.

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

## #6 — @nders, 2003-04-03T12:13Z

Alla fält som du selectar, som inte ingår i SUM() (eller andra liknande funktioner) måste ingå i GROUP BY i din select-fråga. Prova följande:

```
SELECT orders.orderid, orders.datum, orders.betalning, kunder.fnamn, kunder.enamn, kunder.epost, kunder.kundID , SUM(artiklar.pris) as priset 
FROM orders, kunder, artiklar WHERE orders.status = 0 AND orders.kundid = kunder.kundID AND artiklar.artikelid = (SELECT orderartikel.artikelid FROM orderartikel WHERE orderartikel.artikelid = orders.orderid) 
GROUP BY orders.orderid, orders.datum, orders.betalning, kunder.fnamn, kunder.enamn, kunder.epost, kunder.kundID
```

Mvh

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

## #7 — Pikkenix, 2003-04-03T12:43Z

SQL satsen är det inget fel på, däremot så returnerar den inget.. blir bara ett tomt recordset tyvärr...

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

## #8 — Pikkenix, 2003-04-03T16:28Z

Ingen som har någon lösning?

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

---

Tråden på webben: https://www.webforum.nu/amne/databaser-sql/73033-knivig-sql-sträng
