Order by / group by

ASP

5 svar · 249 visningar · startad av tlee

Medlem sedan mars 2001290 inlägg
Trådstart#1
Set DB_QUERY = Connect.Execute("SELECT Artiklar.Artikelnr, Artiklar.Artikelbenämning, Storlekar.Storlek, Priser.[Pris SEK], Lager.Lagersaldo FROM Storlekar INNER JOIN ((Artiklar INNER JOIN Lager ON Artiklar.Artikelnr = Lager.Artikelnr) INNER JOIN Priser ON (Lager.Storleknr = Priser.Storleknr) AND (Artiklar.Artikelnr = Priser.Artikelnr)) ON (Storlekar.Priskol = Priser.Priskol) AND (Lager.Storleknr = Storlekar.Storleknr) AND (Storlekar.Snr = Lager.Snr) WHERE Artiklar.Artikelbenämning LIKE '%"& strCat &"%' ORDER BY Artiklar.Artikelnr;")

Den ovan fungerar, den under fungerar inte, vad är fel?

'		Set DB_QUERY = Connect.Execute("SELECT Artiklar.Artikelnr, Artiklar.Artikelbenämning, Storlekar.Storlek, Priser.[Pris SEK], Lager.Lagersaldo FROM Storlekar INNER JOIN ((Artiklar INNER JOIN Lager ON Artiklar.Artikelnr = Lager.Artikelnr) INNER JOIN Priser ON (Lager.Storleknr = Priser.Storleknr) AND (Artiklar.Artikelnr = Priser.Artikelnr)) ON (Storlekar.Priskol = Priser.Priskol) AND (Lager.Storleknr = Storlekar.Storleknr) AND (Storlekar.Snr = Lager.Snr) WHERE Artiklar.Artikelbenämning LIKE '%"& strCat &"%' GROUP BY Artiklar.Artikelnr;")

Jag får följande fel..

Microsoft OLE DB Provider for ODBC Drivers error '80040e14'

[Microsoft][ODBC Microsoft Access Driver] You tried to execute a query that does not include the specified expression 'Artikelbenämning' as part of an aggregate function.

/af/products_list.asp, line 88

Vad beror det på ?..
Det jag vill göra är att gruppera alla artiklar med samma artikelnummer.., skall det vara så svårt ?

/t

Medlem sedan dec. 200012 464 inlägg
#2

Om du använder group by så måste alla värden i select-listan, antingen ingå i group by listan eller så måste det vara en aggregat-funktion.

Hur skall man tolka din fråga, t.ex om det finns två artikelnummer med olika storlekar, vilken storlek skall man då visa?

jag förstår inte riktigt vad du menar när du säger att du vill gruppera.

Medlem sedan mars 2001290 inlägg
#3

okej..

varje plagg har ett artikelnr.
varje plagg har flera storlekar.

ett plagg kan alltså bara ha ett artikelnr men finnas i olika storlekar.

jag vill endast lista varje plagg en gång även fast det finns i 20 storlekar.

hänger du med ?

/t

Medlem sedan dec. 200012 464 inlägg
#4

Jo, men i så fall kan du inte ha med storlek och de andra kolumnerna i select-listan.

Medlem sedan mars 2001290 inlägg
#5

Okej..

det är ju rätt illa :(..

aja.. får strunta i alla priser och storlekar och då funkar det..

det finns inget annat sätt man kan göra det på utan att använda GROUP BY ?

/t

Medlem sedan mars 20002 836 inlägg
#6

Varför inte bara spara alla storlekar i endast ett fält:

100cl,105cl,110cl,S,M,L,X

Sedan kan man ju splitta upp den strängen och visa alla storlekar som plagget har.

Tycker det låter onödigt att spara all annan produkt information(samma information) i flera poster, en ggn extra för varje storlek.

cya,
PatrikB

267 ms totalt · 4 externa anrop · v20260731065814-full.d34c6d5a
129 ms — deklarationer (db)
0 ms — hämta statistik (cache)
131 ms — hämta tråd, inlägg och bilagor (db)
123 ms — ändringar (db)