0

次のようなテーブルがあります。

id , name , price , date

1    a      100      1.3.12
2    b      230      1.3.12
3    a      300      1.3.12
4    c      1000     1.3.12
5    b      160      1.3.12
6    a      400      1.3.12

合計価格がある値、たとえば 500 を超える名前を表示したいのですが、100、300、400 がある場合a、その合計は 800 > 500 -> 表示になります。

しかし、私はたった1つのクエリでそれをやりたいです。これまでのところ、このクエリを取得できました。

SELECT name SUM (price) AS total FROM table GROUP BY name

しかし、合計 > 500 を選択するには、もう 1 つ実行する必要があります。

どうすればいいのですか?前もって感謝します。

4

2 に答える 2

1

You should use HAVING clause to apply a condition to an aggregated function:

SELECT   name
FROM     yourtable
GROUP BY name
HAVING   SUM(price)>500
于 2013-06-29T17:25:34.430 に答える
1

Use having to filter

select name, sum(price) as total_price
from your_table
group by name
having total_price > 500
于 2013-06-29T17:25:48.213 に答える