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 がこの 2 か月間で異なる場合は、警告またはその性質の何かをエコーし​​たいと考えています。上記の私の例では、チキンの 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 に答える