Faily新到PHP和MySQL,这可能会显得很混乱。mysql多表查询PHP内循环
这是我想出了:
$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。
这是可能的当前脚本?有没有更简单的方法(同时,桌子数量不断变化)?这种查询方法数据库加剧吗?
干杯!
这里的目标是什么?回声(无需担心在php var中存储)来自任何以'whatever'开头的表中满足最大条件的X最近行中的某些字段? – 2011-01-05 03:15:10
如果x = 100个表格,我得到每个表格的值/输出,我只想要100个表格中的10个,最近的10个表格是最近的。 – Alfie 2011-01-05 04:23:36