2013-12-10 55 views
-1

我很堅持了以下問題:SQL查詢,選擇1元,最高COUNT元素B,值和最低值C元素

表「供應商」:1004件不同的物品,用21個不同的供應商(所以很多文章具有相同的供應商,但同一篇文章中從來沒有超過1個供應商)

表「文章」:1004萬方,價格每一篇文章,文章的類(服裝,食品等)。 因此,每個不同的文章都有明顯的價格,但某些文章組屬於1種。

實施例:第32號(男性鞋尺寸40),236(婦女鞋尺寸40),54(兒童鞋尺寸20)都具有 「鞋」 在列 「KIND」。

問題: 不適分裂問題分爲兩個部分。

  1. 選擇文章的種類,其中這種文章的供應商的金額是最高的。
  2. 在這個組中,選擇價格最低的文章。

最後,答案應該是:ARTICLE,PRICE,SUPPLIER。 (換句話說,屬於供應商數量最多且價格最低的物品種類的文章)。

我只有在此之後至今大量玩味..

SELECT 
    article.art, article.price, 
    COUNT(DISTINCT supplier.sup) 
FROM article, supplier 
WHERE article.art = supplier.art 
GROUP BY artikel.art 

我預計今年給我的每篇文章有多少供應商有,但它不。 我敢肯定,你必須使用的東西:

HAVING MIN(price)

ORDER BY article.price ASC AND COUNT(DISTINCT supplier.sup) DESC

我試過的代碼,我認爲每一個可能的組合,但我無法找到答案。有人在這裏能夠嗎?

+1

量的供應商?我沒有得到這個。你能否詳細說明一下。列出幾行表格並構建您想要查看的結果表是一個好主意。這樣我們就可以輕鬆理解。 – johnny

+0

價格是不是由供應商定義的東西?我有點驚訝地發現,在文章表中。 – cars10m

+0

什麼組的價格最低的文章?你只是指最低價的文章? –

回答

0

我認爲你正在尋找的東西是這樣的:

SELECT 
    article.art, article.price, 
    COUNT(DISTINCT supplier.sup) 
FROM article LEFT OUTER JOIN supplier ON article.art = supplier.art 
ORDER BY artikel.price ASC 
LIMIT 0,1 
GROUP BY artikel.art