gpt4 book ai didi

php - PHP如何停止输出重复的数据库查询结果

转载 作者:行者123 更新时间:2023-11-29 00:18:20 24 4
gpt4 key购买 nike

我遇到了一个问题,想知道是否有人可以帮助我。我会尽可能清楚地解释我的问题。我正在尝试制作数据馈送,以便我可以自动将我的库存实现到另一个网站。我已经完成了数据馈送,但我遇到的问题是为每辆车添加所有车辆图像。我只能在数据源上为每辆车显示主图像。

我的数据库表是这样设置的

categories - cat_id, cat_name

pictures - key_id, veh_id, pic_name

vehicles - veh_id, cat_id, _make, _model, sub_model etc.....

下面是我的 datafeed.php 中的代码

我希望能够在一行中为每个项目显示表图片 中的所有图像。我尝试加入车辆图片但不喜欢输出。它多次在数据源中列出每辆车。如果一辆车有 12 张照片,它会在数据源中列出该车 12 次。任何帮助将不胜感激。

$fh = fopen($myFile, 'w');

$query = "SELECT * FROM vehicles WHERE _sold = 'STOCKED' ORDER BY _make ASC";
$result = mysql_query($query) or die(mysql_error());

while($row = mysql_fetch_array($result, MYSQL_ASSOC)){

$current_date = date('Y-m-d');
$due_date = date("Y-m-d", strtotime( date( "Y-m-d", strtotime( date("Y-m-d") ) ) . "+2 week" ) );

$stringData = "|{$row['_make]}|{$row['_model']}| |{$row['_body']} |Damaged|{$row['_year']}| |{$row['_price']} ||{$row['_desc']} ||{$row['_title']} |{$row['_miles']}| |{$row['veh_id']}|$due_date|http://www.mywebsite.com/{$row['_year']}/{$row['_make']}/{$row['veh_id']}|http://www. mywebsite.com/{$row['veh_id']}{$row['_thumbnail']}| | | | | | | | | |Buy it Now \n";

fwrite($fh, $stringData);

} ;

fclose($fh);
include 'config/close.php';

最佳答案

尝试使用以下 SQL:

SELECT C.cat_name, V. * , pictures
FROM vehicles AS V
LEFT JOIN categories AS C ON C.cat_id = V.cat_id
LEFT JOIN (
SELECT P.veh_id, GROUP_CONCAT( pic_name ) AS pictures
FROM pictures AS P
LEFT JOIN vehicles AS V ON P.veh_id = V.veh_id
GROUP BY P.veh_id
) AS P ON P.veh_id = V.veh_id

以上查询将返回所有带有或不带有图像的车辆。你可以简单地用逗号分解 pictures 字段来获取所有图片

查看工作演示 here

关于php - PHP如何停止输出重复的数据库查询结果,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/22035166/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com