这个SQL语句如何写???急急急!!!谢谢。。。
数据库表结构:
mysql> desc category_word;
+--------------+-----------+------+-----+------------+----------------+
| Field | Type | Null | Key | Default | Extra |
+--------------+-----------+------+-----+------------+----------------+
| id | int(11) | | PRI | NULL | auto_increment |
| categorykey | char(100) | | MUL | | |
| categorydata | int(11) | | MUL | 0 | |
| categorydate | date | | MUL | 0000-00-00 | |
| type_id | int(11) | | PRI | 0 | |
+--------------+-----------+------+-----+------------+----------------+
id : 为自动生成
categorykey : 关键字
categorydata : 关键字在网站的搜索量
categorydate : 日期(格式:20003-11-18)
type_id : 分类id(有:软件、Flash、mp3、文章)
我的网站上的以下栏目:软件、Flash、mp3、文章,这个表记录了各个分类的关键字每天的搜索量。
以下是我的代码,做要运行很长时间,总是程序超时:(
//////////////////////////////////////////////////////////////////////
//分类TOP50上榜天数
function type_top_day ($keyword, $id)
{
$sql = "SELECT distinct(categorydate) FROM category_word ORDER BY categorydate DESC";
$query = mysql_query ( $sql );
if ( $query ){
while ( $str_date = mysql_fetch_array ( $query ) )
{
$key_sql = "SELECT categorykey FROM category_word WHERE
type_id = '$id' AND categorydate = '$str_date[0]'
ORDER BY categorydata DESC LIMIT 50";
$key_query = mysql_query ( $key_sql );
while ( $arrkey = mysql_fetch_array ( $key_query ) )
{
if ( $keyword == $arrkey[0] )
{
$day++;
continue;
}
}
}
}else{
print ("SQL error<br>");
}
return $day;
}
谢谢!!!