日期:2014-05-16  浏览次数:20813 次

mysql查询问题
有表如
CREATE TABLE `testtable` (
  `PlayerID` int(11) NOT NULL,
  `LastSevID` int(11) NOT NULL default '0',
  `Mark` decimal(16,1) NOT NULL default '0.0',
  `Level` int(11) NOT NULL default '1',
  PRIMARY KEY (`PlayerID`,`LastSevID`),
  KEY `Mark` (`Mark`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8 AVG_ROW_LENGTH=225 COMMENT='InnoDB free: 93184 kB';

现在我有数据
1 2 10 1
1 3 10 2
1 4 10 3
1 5 10 4
现在我只想查询到表中有多少的playerID 也就是我只要显示不重复的playerID,我的查询语句该怎么写

------解决方案--------------------
select count(distinct PlayerID ) from testtable;
------解决方案--------------------
SQL code
select count(*) from (select distinct PlayerID from testtable) t;

------解决方案--------------------
(不要高估你的汉语表达能力或者我的汉语理解能力)
建议你列出你的表结构,并提供测试数据以及基于这些测试数据的所对应正确结果。
参考一下这个贴子的提问方式http://topic.csdn.net/u/20091130/20/8343ee6a-417c-4c2d-9415-fa46604a00cf.html
 
1. 你的 create table xxx .. 语句
2. 你的 insert into xxx ... 语句
3. 结果是什么样,(并给以简单的算法描述)
4. 你用的数据库名称和版本(经常有人在MS SQL server版问 MySQL)
 
这样想帮你的人可以直接搭建和你相同的环境,并在给出方案前进行测试,避免文字描述理解上的误差。


------解决方案--------------------
引用我要获取的是playerID的值