2

私はこれについて多くのことを読みましたが、どれも私にとってはうまくいきませんでした。誰か助けてくれませんか?

私は多くの異なる記事 (同じ EAN を持つ多く) を含む大きなテーブルを持っており、常に正しい AN を持つ最も安いもの (価格で並べ替え) のみが必要です:

*art   price   an    ean
*Test |79,00|15770|0808736558136
*Test |85,00|k3238|0808736558136
*Test |68,00|r4850|0808736558136
*Test |65,00|a1117|0808736558136
*Test |78,00|t8619|0808736558136

これを期待してください:

*Test |65,00|a1117|0808736558136
4

2 に答える 2

4
SELECT B.*
  FROM BigTable AS B -- Why do SQL questions omit the table names so often?
  JOIN (SELECT EAN, MIN(Price) AS Price
          FROM BigTable
         GROUP BY EAN
       ) AS P
    ON B.EAN = P.EAN AND B.Price = P.Price
 ORDER BY B.EAN;

サブクエリは、各 EAN の最低価格を見つけます。外側のクエリは、EAN とその EAN の最低価格に一致する詳細を検索します。特定の EAN の最低価格が同じレコードが 2 つある場合は、両方が選択されます。

于 2012-05-22T11:17:01.337 に答える
0
SELECT * FROM myTable ORDER BY price ASC LIMIT 1
于 2012-05-22T11:17:35.223 に答える