【发布时间】:2014-05-23 14:44:15
【问题描述】:
我有一个名为 key_uniqueWord 的 MySQL 表。这就是它的样子。
这就是创建表的方式..
CREATE TABLE `key_uniqueword` (
`p_id` int(11) NOT NULL,
`word` varchar(45) NOT NULL,
`uniqueWordCount` int(11) NOT NULL,
KEY `conv4` (`uniqueWordCount`,`p_id`,`word`)
) ENGINE=MyISAM DEFAULT CHARSET=latin1
我可以通过以下命令获取word 列中每个唯一单独记录的列表。
SELECT DISTINCT `word` from `key_uniqueword`
我可以使用以下命令检查word 列中的“特定”单个元素出现在key_uniqueword 表中的次数。例如,让我们检查单词“about”
SELECT COUNT(`word`) FROM `key_uniqueword` WHERE `word`="about"
就像这样,我需要知道word 列中的“每个”唯一元素在key_uniquword 表中出现了多少次。我希望输出类似于下表结构。它有 2 列,word 和 count
word | count
_ _ _ _ _ _ _ _ _
about | 99,450
a | 1000
talk | 7980
men | 20,915
如何在 MySQL 查询中执行此操作?
重要
请注意,p_id 每行都不相同。
【问题讨论】:
-
p_id 对于所有行都相同吗?您的表没有 PRIMARY KEY。
-
@Strawberry:不,不是。
-
@Strawberry:是的,它没有主键。
-
uniqueWordCount列中存储了什么样的数据?如果您已经知道计数,您似乎不必计算计数。 -
@ntalbs:把它想象成一个随机数。