列出当月的最低价格产品

时间:2016-07-07 17:50:22

标签: mysql vb.net

我有一张名为" fiyatlar"在MySql数据库中。表格包含多个产品ID以及每月和每年的价格。请查看下面的示例表:

ID      Price     Month    Year
11111   11.00     5        2016
11111   12.15     6        2016
11111   13.10     7        2016
22222   8.75      5        2016
22222   8.50      6        2016
22222   8.00      7        2016 

我需要找到当月的最低价格产品,并将它们列在数据网格中。

提前谢谢。

2 个答案:

答案 0 :(得分:1)

根据新了解的要求更新:

我无法忍受不解决这个问题。 :)这将有效:

SELECT fiyatlar.ID
FROM fiyatlar INNER JOIN
    (SELECT ID, MIN(Price) AS Price
    FROM fiyatlar GROUP BY ID) AS tmp
ON fiyatlar.ID = tmp.ID
    AND fiyatlar.Price = tmp.Price
WHERE Year = YEAR(current_date())
    AND Month = MONTH(current_date());

这是我重复最小值的测试表:

11111   12.15   6   2016
11111   11.00   5   2016
11111   10.90   10  2015
11111   10.90   7   2016
22222   9.00    9   2015
22222   8.75    5   2016
22222   8.70    7   2015
22222   8.50    6   2016
22222   7.90    4   2015
22222   7.70    8   2015
22222   7.70    7   2016
33333   8.99    1   2016
33333   7.80    2   2016
33333   3.90    3   2016
33333   5.90    4   2016
33333   7.90    5   2016
33333   5.90    6   2016
33333   3.90    7   2016

答案 1 :(得分:0)

如果你有这个想法?

SELECT *
FROM
(SELECT *
FROM fiyatlar
WHERE Year = YEAR(current_date())
AND Month = MONTH(current_date())) month_table
WHERE Price = MIN(Price)