我有:
SELECT * FROM products
INNER JOIN cat1 ON products.maincategory=cat1.rid
INNER JOIN cat2 ON products.cat2=cat2.rid
它显示所有信息正常,但如果我echo $row_rsProducts['category']
我无法确定该类别是来自表格cat1
还是表格cat2
。我该如何解决这个问题?
答案 0 :(得分:1)
您需要为来自cat1
和cat2
的商品提供别名:
SELECT products.*,
manufacturer.*,
cat1.rid as c1rid,
cat1.category as c1category,
ifnull(cat2.rid,'') as c2rid,
ifnull(cat2.category,'') as c2category
FROM products
INNER JOIN manufacturer ON products.manufacturer=manufacturer.rid
INNER JOIN cat1 ON products.maincategory=cat1.rid
LEFT OUTER JOIN cat2 ON products.cat2=cat2.rid
而不是像这样使用它们:echo $row_rsProducts['c1category']
答案 1 :(得分:0)
不使用SELECT *但实际命名列并为每个相同的命名列提供别名或通过表和列名称引用它们