標(biāo)題: count(*) 與 group by一起使用的問(wèn)題 [打印本頁(yè)] 作者: we_2002 時(shí)間: 2008-08-17 02:47 標(biāo)題: count(*) 與 group by一起使用的問(wèn)題 mysql> SELECT COUNT(*) FROM Bird GROUP BY name;
+---------+----------+
| COUNT(*) |
+---------+----------+
| 2 |
| 1 |
+---------+----------+
2 rows in set (0.00 sec)
但是我的原意是想計(jì)算出Bird這個(gè)表中不重復(fù)name的行的總數(shù),期望輸出如下
+---------+----------+
| COUNT(*) |
+---------+----------+
| 3 |
+---------+----------+
1 rows in set (0.00 sec)
嘗試使用了子查詢(xún):
SELECT COUNT(*) AS `Count` FROM( SELECT * FROM Bird GROUP BY name) AS `Temp`
但是在數(shù)據(jù)量稍大的情況下查詢(xún)效果實(shí)在是慢到不能接受了
請(qǐng)教一下大家這個(gè)要怎么寫(xiě)法?作者: wildlily980 時(shí)間: 2008-08-17 10:54
select count(distinct name) from Bird作者: we_2002 時(shí)間: 2008-08-17 13:48
但是我還要加上其他的where查詢(xún)條件的話好像就不行了
SELECT Count(distinct `Name`) FROM `db_live_channel` WHERE `Name` LIKE '%re%' GROUP BY `Name`作者: sunnyfun 時(shí)間: 2008-08-17 19:30
SELECT Count(distinct `Name`) FROM `db_live_channel` GROUP BY `Name` HAVING `Name` LIKE '%re%'