来自不同表的MYSQL多JOIN

时间:2017-04-04 11:50:35

标签: mysql

我有多个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

所以我不知道我会有多少行。

提前感谢你

0 个答案:

没有答案