【发布时间】:2011-10-27 22:50:18
【问题描述】:
我正在尝试将音乐建议应用程序集成到我当前的音乐评级应用程序中。我正在寻找一种根据当前口味推荐音乐的方法。
我在我的 iPod 上写这个问题,所以格式可能是错误的,所以我将解释这些列。
rate_id, username, artist, type (男/女/混), song_id, songname, genre, year, like, @987654 /p>
例如,一个人喜欢 4 首曲目,这个查询是:
SELECT * FROM rates WHERE username='$_SESSION['username']' LIMIT 4 ORDER BY id
返回:
1 | mrexample | Katy Perry | F | 55 | Firework | Pop | 2010 | 1 | 0
78 | mrexample | Lady Gaga | F | 36 | Pokerface | Pop | 2010 | 1 | 0
95 | mrexample | Nelly | F | 96 | Just a Dream | Pop | 2010 | 1 | 0
106 | mrexample | Justin Bieber | M | 78 | Baby | Pop | 2010 | 1 | 0
好的,从这种评分模式来看,我们知道 mrexample 最喜欢 2010 年写的女性流行歌曲,所以根据这些数据,我们对用户生成的音乐收藏数据库进行查询:
mysql_query("SELECT * FROM music WHERE genre='pop' AND type='F' AND year='2010' LIMIT 5 ORDER BY RAND()")
现在,我的问题是:我如何从有关该人费率的大量数据中找出常见数据是什么?
我认为必须有一个 mysql 命令,但我不确定:/
我考虑过 if 语句,不可能,如果部分流行部分是艺术家,那么可能性太多,我们的数据库中有很多艺术家。切换,同样的事情。数数,没有什么特别值得我数的。我可以再次针对 if 使用 mysql num 行 - 太多了。
有什么想法吗?
【问题讨论】:
-
您正在查看的是您的应用程序的自定义要求。您需要确定“流行”对您意味着什么,并根据您提到的参数编写算法。
标签: php mysql autosuggest