Problem mit select-Abfrage

ar43r

Grünschnabel
Hallo Leute!

Ich gehe schon seit 2 Tagen kaputt, weil eine sql-Abfrage mich wahnsinnig macht. Ich habe eine Tabelle namens products:
Code:
id        cat             prod              price
1	Beverages 	 Chai      	   18,00     
2	Beverages 	 Chang     	   19,00     
4	Condiments      Aniseed   	   10,00     
5	Condiments      Ikura     	   31,00
Die Fragestellung ist:
Welche Artikel haben den niedrigsten Preis in ihrer Kategorie? Hier sollen die Kategorien, die Artikel-namen und dessen price ausgegeben werden.
Die Ausgabe muss also so aussehen:
Code:
id        cat           prod            price
1	Beverages 	 Chai      	18,00  
4	Condiments      Aniseed   	10,00

Ich habe also folgendes gemacht:
select cat, min(price) 'Preis' from products
group by cat

Dies gibt mir das zurueck:
Code:
cat             price
Beverages	18,00
Condiments      10,00

Aber wie bringt man noch der Name des Produktes in die Ausgabe
Wenn man sagt
select cat, prod, min(price) 'Preis' from products

muss man auch nach prod gruppieren. aber es ist Bloedsinn...

HILFE bitte

lg ar43r
 
Zuletzt bearbeitet:
Hi, alle zusammen!
Inzwischen hat sich meine Aufgabe einbisschen geaendert. Ich benutze jetzt Northwind DB (englsche Version fuer MSSQL). Die Aufgabe ist:

Welche Artikel haben den niedrigsten Preis in ihrer Kategorie?
Hier sollen die Kategorien, die Artikel-namen und dessen preise ausgegeben werden.

Und so funktioniert es:

Code:
select a.CategoryName,  b.Productname, a.Preis from 
(select Categories.CategoryName, min(products.UnitPrice) 'Preis' from products
inner join Categories
on products.CategoryID = Categories.CategoryID
group by Categories.CategoryName)
a
inner join
(select Categories.CategoryName, products.ProductName, Products.UnitPrice
	from products
	inner join Categories
	on products.CategoryID = Categories.CategoryID
group by Categories.CategoryName, products.ProductName, Products.UnitPrice)
b
on a.CategoryName = b.CategoryName
where a.preis = b.UnitPrice
order by a.CategoryName
 
Zurück