php循环中的mysql多表查询

时间:2011-01-05 03:05:22

标签: php mysql sql

每天都是php和mysql的新手,这可能看起来很乱。

这就是我提出的:

$query = "show tables like 'whatever%'";
$result = mysql_query($query);
$num_results = mysql_num_rows($result);

for ($i = 0; $i < $num_results; $i++)
{
$row = mysql_fetch_array($result);
$sql=mysql_query("SELECT * FROM ". $row[0] ." WHERE a=(SELECT MAX(a)) AND b=(SELECT MAX(b)) AND c LIKE 'd%' ORDER BY date DESC LIMIT 1"); 


while($info=mysql_fetch_array($sql)){ 
  echo "...";
}
}

我从每个表中获得所需的值,因此x结果取决于表的数量。我想要的是查询表的结果,但只显示按日期/时间排序的前10-5。

当前脚本可以实现吗?是否有更简单的方法(同时,表的数量不断变化)?这个查询方法是数据库强化吗?

干杯!

1 个答案:

答案 0 :(得分:0)

我不断改变具有类似结构的表的数量设计错误。还查询切换到

$sql=mysql_query("SELECT * FROM $tbl WHERE c LIKE 'd%' ORDER BY a DESC, b DESC, date DESC LIMIT 1"); 

对数据库有点宽慰。