2014-01-29 38 views
0

這裏是我的表看起來像我如何獲得SQL中的數量範圍?

id | amount |  Consider table name as Amount 
-------------- 
1 | 100 
2 | 100 
3 | 100 
4 | 200 
5 | 300 
6 | 300 

我想編寫一個查詢將返回我算的範圍是這樣的:

amount | count 
--------------- 
100 | 3 
200 | 1 
300 | 2 

請幫我我堅持!

EDIT1:我想輸入金額範圍!對不起,我錯過了!

EDIT2:我可以通過多個範圍像100至200,200至300,只有100

+1

什麼是數額範圍? –

+0

我想輸入金額範圍!對不起,我錯過了! – user2783484

+0

你有一個錯字,200應該是300最後一行。 – Mihai

回答

1
SELECT amount,COUNT(amount)as count FROM table 
GROUP BY amount 
HAVING amount BETWEEN x AND y 

如果你想與一定量的使用HAVING組,如果你想單獨行使用WHERE amount ...

+0

謝謝,但我想指定的金額範圍!對不起,我錯過了! – user2783484

+0

謝謝!它回來時,我只有一行 在「有」 之間添加此金額介於0和100之間,金額介於100和500之間 – user2783484

1

試試這個:

select amount,count(*) 
from MyTable 
where amount between 100 and 200 
group by amount 
order by amount 
+0

更新與範圍篩選器 – BWS

+0

謝謝!但它只返回一行否?如果我必須通過範圍0-100,200-300,300-500我不能這樣做! :( – user2783484

+0

更改爲0到500之間...或任何範圍,你想... – BWS

0

使用此查詢:

SELECT count(id) 
FROM Amount 
GROUP BY amount; 
0

如果我理解你正確,你想要一個這樣的範圍?

SELECT amount,COUNT(amount)as count 
FROM table 
WHERE amount > 5 AND amount < 600 
GROUP BY amount 
+0

是的,但它只返回一行否?如果我必須通過範圍0-100,200-300,300-500我不能這樣做! :( – user2783484

+0

這不會給你一行,它會給每行一行,嘆氣,使用你在例子中給出的數據和你要求的結果,如果有其他的數據或者你想要的其他結果,你應該把這個問題。 –

+0

我想我的問題說我需要計數多個輸入範圍!遺憾,如果它是miscomunication! – user2783484

相關問題