我有两张 table
名为 services
的第一个表具有 id_service、名称、日期。描述
名为 services_images
的第二个表具有 id_img、img_name、id_service
现在假设我必须通过一个查询(如果可能)返回 2 个数组
第一个数组包含来自表 “services”
的一个特定 id 的字段
第二个数组,包含与表 “services_images”
或者更好的是,只有一个数组具有与 1 中所述相同的数据,其中一个名为“images”的数组 INSIDE 包含表 “services_images”
我需要它来处理和显示 html 页面中的数据,这是唯一的方法。
如果我不能在 mysql 中完成,我怎么能在 PHP 中安排它,我唯一能想到的就是 2 个查询
另外,我一直在努力提高自己的技能,因为我过去常常对所有内容进行单一查询,是否存在无法进行 1 次查询的情况? 谢谢!
最佳答案
编辑:我现在明白你的意思了——我第一次误解了。
要做到这一点,唯一的方法就是进行多个查询。你必须做类似的事情:
$sql = "SELECT * FROM services WHERE id_service=$id";
$result = mysql_query($sql);
$services = mysql_fetch_array($result);
$new_sql = "SELECT * FROM services_images WHERE id_service=$id";
$new_result = mysql_query($sql);
while($row = mysql_fetch_array($result)){
$serivices_images[] = $row;
}
实际上我又改变了主意..试试这个:
SELECT services.*,services_images.* FROM services, services_images WHERE services.id_service=services_images.id_service AND services.id_service=$id
现在,当您执行 while($row = mysql_fetch_array($sql_query_result))
时,您可能会返回所有行...但我不知道。只是一个猜测。
关于php - 从查询返回多个数组,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/3484483/