我有多个MYSQLI表,可以提供有关旅游套餐的多个详细信息和选项。 我有包包含主要信息,然后我有 package_option ,其中包含添加到包中的未知数量的选项,以及 package_images 其中包含图像。
我想在一个查询中获取所有信息,但它提出了一项艰巨的任务。让我解释。
我已经使用了JOIN,但问题是如果 package_option 有3个选项且 package_images 有6张图片,结果是6 * 4加1(包)结果表。
我想要一个包含所有字段的结果,尽管它们最初都在表中,但并不是每个表中每个匹配的乘法。
例如,我瞄准的表格如下:
-------------------------------------------------------------------------
| ID | name | description | price | option | image | size | explanation |
-------------------------------------------------------------------------
| 1 | test | some desc | 50 $ | opt. 1 | img1 | 30 | |
| | | | | opt. 2 | img2 | | |
| | | | | opt. 3 | img3 | | |
| | | | | | img4 | | |
| | | | | | img5 | | |
| | | | | | img6 | | |
现在,上面的表格会在每个字段中填充,但它会成倍增加,所以我不会只获得6行,而是24行。
我做了很多JOINS,我不是一个初学者,这更令人沮丧,但这是我第一次尝试这样做,从多个表中选择不同列和未知行数。
package_option 和 package_images 看起来像这样:
-------------------------------------
| ID | package_id | option / image |
-------------------------------------
| 1 | 1 | opt. 1 / img 1 |
| 2 | 2 | opt. 2 / img 2 |
..... etc
所以我不知道我会有多少行。
提前感谢你