1

我有一个名为“项目”的表

id       month       year       **itemname**       distmoney
 1        12         2012         chicken           20
 2        12         2012         pork              15
 3        11         2012         chicken           21
 4        11         2012         pork              15

我正在尝试对具有相同名称的项目运行“差异报告”。

所以对于鸡肉,它出现在第 12 个月和第 11 个月。如果这两个月的 distmoney 不同,我想回应一个警告或类似的东西。在我上面的例子中,鸡肉的 distmoney 在第 12 个月是 20,但在第 11 个月是 21。所以,“警告!” 应该得到回应。然而,对于猪肉来说,distmoney 保持不变,所以我只会回应“没有问题”或类似的东西。

我该怎么做呢?

谢谢你的帮助。非常感谢。

4

1 回答 1

2

您可以查看列中GROUP BY的行itemname并查看列中有多少不同的值distmoney。如果有多个不同的值,则可能存在问题。

SELECT 
    name,
    IF(COUNT(DISTINCT distmoney) > 1, 'warning!', 'no issues') AS status
FROM
    items
GROUP BY
    name
于 2013-01-10T02:14:44.643 回答