假设我的 MySQL 数据库中有以下表:
TABLE Products
| id | some_column1 | some_column2 |
TABLE ProductProperties
| id | product_id | name |
过于简单,但足够了。现在我想获得所有具有属性的产品。我愿意:
SELECT * FROM `Products` JOIN `ProductProperties` ON Products.id = ProductProperties.product_id
我能得到什么?
| id | some_column1 | some_column2 | id | product_id | name |
这并不酷,我想通过以下两种方式之一让它变得酷:
1) 获取像 Product 表中的对象数组,但又扩展了一个成员,这将是匹配 JOIN 的属性数组。我已经想通了,这是不可能的?
2)要获得这样的数组(我仍然必须在 PHP 中对其进行迭代,以将一个产品中的所有属性连接到一个对象中):
| product_id | some_column1 | some_column2 | property_id | product_id | name |
所以我想将列 ProductProperties.id 重命名为 ProductProperties.property_id。如果我也可以从输出中删除 ProductProperties.product_id ,那将是理想的,但现在,我只想重命名输出中的一列。或者用表名作为前缀。或类似的东西。
可行吗?