2011-04-14 86 views
2

我有名字,看起來像這樣:盤點記錄

  • 安德魯
  • 亞瑟
  • 巴里

我願做其中找出如何查詢許多記錄以An,Ar,Ba開頭。例如

  • 的,1
  • 氬氣,1
  • BA,1

回答

9
Select COUNT(*),SUBSTRING(column_name,1,2) FROM table_name GROUP BY SUBSTRING(column_name,1,2) 
+0

酷,我不得不如P ETER和彼得的名字,任何方式修剪空出來? – Tom 2011-04-14 15:09:19

+0

ofcource first trim out TRIM(column_name) – jimy 2011-04-14 15:11:12

+0

@jimy - 我相信'TRIM'只會刪除前面或後面的空格(或兩者),而不是中間的那些。 @Tom可以使用'REPLACE(column_name,'','')' – Lamak 2011-04-14 15:13:32

2
SELECT SUBSTRING(name, 1, 2), COUNT(*) AS "Count" 
FROM mytable 
GROUP BY SUBSTRING(name, 1, 2) 
+0

你爲什麼別名'COUNT(*)'? :) – 2011-04-14 15:39:02

+0

我來自SQL Server的世界,如果你沒有別名的功能,那麼列標題將是空白的。這是不是在MySQL? – 2011-04-14 16:39:50

+0

對不起,這是我的一個奇怪的笑話。其實我的意思是問你爲什麼要給COUNT別名,但沒有這樣做到SUBSTRING。 :)對不起,應該在那裏更嚴重。 – 2011-04-15 04:39:15