-1
Table name: acc_type and it's structure id image_1 image_3 1 1.jpg 2.jpg 2 3.jpg 4.jpg 3 5.jpg 6.jpg
Table name: Products and it's structure id_product id_category_default acc_type 1 20 1 2 22 2 3 23 3 4 24 2 5 25 1
$sql = mysql_query("SELECT * FROM pproducts WHERE id_category_default='$id_category_default' ORDER BY id_product DESC 50"); $dynamicList = ''; $productCount = mysql_num_rows($sql); if ($productCount > 0) { while($row = mysql_fetch_array($sql)){ $id_product = $row["id_product"]; $id_category_default = $row["id_category_default"]; $acc_type = $row["acc_type"]; $dynamicList .=''; }else{ $dynamicList = "We have no products listed in our store yet"; }
在这里,我想从acc_type表中获得单独的image_1和image_3,以从产品表中获得单独的product_id。我该怎么办?请帮忙。
版权声明:本文内容由阿里云实名注册用户自发贡献,版权归原作者所有,阿里云开发者社区不拥有其著作权,亦不承担相应法律责任。具体规则请查看《阿里云开发者社区用户服务协议》和《阿里云开发者社区知识产权保护指引》。如果您发现本社区中有涉嫌抄袭的内容,填写侵权投诉表单进行举报,一经查实,本社区将立刻删除涉嫌侵权内容。
要从acc_type
表中获取与每个产品对应的image_1
和image_3
,您需要在查询中加入一个JOIN操作来关联Products
表和acc_type
表。基于您提供的表格结构,这里是一个示例SQL查询,展示了如何实现这一需求:
SELECT
p.id_product,
a.image_1,
a.image_3
FROM
Products p
INNER JOIN
acc_type a ON p.acc_type = a.id
WHERE
p.id_category_default = '$id_category_default'
ORDER BY
p.id_product DESC
LIMIT 50;
在这个查询中: - 我们使用INNER JOIN
来连接Products
(别名为p
)和acc_type
(别名为a
)两个表,基于它们的匹配字段acc_type
(在Products
表中)和id
(在acc_type
表中)。 - SELECT
语句选择了我们感兴趣的列:id_product
、image_1
和image_3
。 - WHERE
子句限制了结果集,只包括那些id_category_default
等于指定值的记录。 - ORDER BY p.id_product DESC
确保结果按照id_product
降序排列。 - LIMIT 50
限制返回的结果数量为50条。
请记得将'$id_category_default'
替换为您实际需要的类别默认ID值,并且要注意,这个示例假设您的数据库连接和执行环境已经正确设置。另外,考虑到安全性和最佳实践,建议使用参数化查询或预处理语句来防止SQL注入攻击,特别是在处理用户输入时。