2012-03-26 4 views
0

私は、次のMySQLデータベースがあります。私のホームページにMySQLの選択非期限切れの取引

|deal_name|price|shop|expiration_date 
- - - - - - - - - - 
|sale1|110|shop1|03-30-2012 00:00:00 
|sale2|120|shop1|03-29-2012 00:00:00 
|sale3|130|shop2|03-12-2012 00:00:00 
|sale4|140|shop2|03-29-2012 00:00:00 
|sale5|150|shop3|03-30-2012 12:00:00 
|sale6|160|shop3|03-30-2012 00:00:00 

が、私は価格で注文した各店舗からの1件の契約を表示したいとの契約が満了していませんことができます。

例ホームページ:

SELECT * 
FROM deals 
WHERE DATE_FORMAT(expiration_date,'%Y-%m-%d') >=CURDATE() $cat 
ORDER BY deal_id ASC 

私はそれをどのように操作を行うことができます。 sale1 sale5

私は今、これを持って?私は何を追加しなければなりませんか?ありがとうございました!

答えて

1

あなたは、あなたが価格にMAXまたはMINを追加し、

SELECT deal_name,MIN(price),shop 
FROM deals 
WHERE DATE_FORMAT(expiration_date,'%Y-%m-%d') >=CURDATE() $cat 
GROUP BY deal_name,shop 
ORDER BY deal_id ASC 

未テストをグループ化しようとすることができますが、あなたが始める必要があります取得扱うかについて気にしない場合。

+0

私は各店舗から1つの取引を選択したかったのです。 – Nathaniel

+0

これは店舗ごとに1つの取引を返しません。 –

関連する問題