Php 用mysql标记云

Php 用mysql标记云,php,mysql,tags,cloud,Php,Mysql,Tags,Cloud,有没有其他方法可以在没有临时表的情况下从mysql生成标记云 mysql> explain wallpaper_keywords; +--------------+-----------------------+------+-----+---------+----------------+ | Field | Type | Null | Key | Default | Extra | +--------------+------

有没有其他方法可以在没有临时表的情况下从mysql生成标记云

mysql> explain wallpaper_keywords; +--------------+-----------------------+------+-----+---------+----------------+ | Field | Type | Null | Key | Default | Extra | +--------------+-----------------------+------+-----+---------+----------------+ | id | mediumint(7) unsigned | NO | PRI | NULL | auto_increment | | wallpaper_id | mediumint(7) unsigned | YES | MUL | NULL | | | keyword_id | smallint(5) unsigned | YES | MUL | NULL | | +--------------+-----------------------+------+-----+---------+----------------+ mysql> explain keywords; +---------+-----------------------+------+-----+---------+----------------+ | Field | Type | Null | Key | Default | Extra | +---------+-----------------------+------+-----+---------+----------------+ | id | mediumint(7) unsigned | NO | PRI | NULL | auto_increment | | keyword | varchar(32) | YES | UNI | NULL | | +---------+-----------------------+------+-----+---------+----------------+ 编辑 另一个问题: 选择count,k.keywords from SELECT*,countwk.keywords\u id作为墙纸中的count\u关键字wk组按wk.keywords\u id LIMIT 50000作为数据左按k.id=数据。关键字\u id按计数顺序描述限制500


现在的问题是——有没有更好的解决办法?更便宜的显示状态,如“上次查询成本”;计算方法?

为了计算每个关键字的总值,您可以在表关键字中使用额外的字段total\u count,并通过每次向该字段添加新关键字add+1,这对您的数据库在将来来说非常简单,当您有100000条记录时。

要计算每个关键字的总值,您可以在表关键字中使用额外的字段total\u count,并通过向该字段添加每个新关键字add+1-在将来有100000条记录时,这对您的数据库来说非常简单。

至少需要用100k条记录测试ir:但无论如何,我决定只计算最后20k条记录,因为我的标记云只有300~words,至少需要用100k条记录测试ir:但无论如何,我决定只计算最后20k条记录,因为我的标记云只有300~words +----------+-------+ | keyword | count | +----------+-------+ | computer | 10 | | road | 4 | | tree | 4 | | window | 4 | | nature | 4 | | forest | 3 | | cars | 3 | | mazda | 3 | | abstract | 3 | | funny | 3 | | sport | 3 | | sea | 3 | | city | 3 | | warrior | 2 | | bird | 2 | | lights | 1 | | summer | 1 | | space | 1 | | dusk | 1 | | ubuntu | 1 | +----------+-------+ explain: +----+-------------+--------------------+-------+---------------+---------+---------+------+------+----------------------------------------------+ | id | select_type | table | type | possible_keys | key | key_len | ref | rows | Extra | +----+-------------+--------------------+-------+---------------+---------+---------+------+------+----------------------------------------------+ | 1 | PRIMARY | keywords | index | NULL | keyword | 99 | NULL | 20 | Using index; Using temporary; Using filesort | | 1 | PRIMARY | | ALL | NULL | NULL | NULL | NULL | 54 | | | 2 | DERIVED | wallpaper_keywords | index | NULL | PRIMARY | 3 | NULL | 54 | | +----+-------------+--------------------+-------+---------------+---------+---------+------+------+----------------------------------------------+ 3 rows in set (0.00 sec) +----+-------------+------------+--------+---------------+------------+---------+-----------------+------+----------------+ | id | select_type | table | type | possible_keys | key | key_len | ref | rows | Extra | +----+-------------+------------+--------+---------------+------------+---------+-----------------+------+----------------+ | 1 | PRIMARY | | ALL | NULL | NULL | NULL | NULL | 20 | Using filesort | | 1 | PRIMARY | k | eq_ref | PRIMARY | PRIMARY | 3 | data.keyword_id | 1 | | | 2 | DERIVED | wk | index | NULL | keyword_id | 3 | NULL | 59 | | +----+-------------+------------+--------+---------------+------------+---------+-----------------+------+----------------+