每天都是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。
当前脚本可以实现吗?是否有更简单的方法(同时,表的数量不断变化)?这个查询方法是数据库强化吗?
干杯!
答案 0 :(得分:0)
我不断改变具有类似结构的表的数量设计错误。还查询切换到
$sql=mysql_query("SELECT * FROM $tbl WHERE c LIKE 'd%' ORDER BY a DESC, b DESC, date DESC LIMIT 1");
对数据库有点宽慰。