【发布时间】:2017-07-28 15:17:17
【问题描述】:
您好,我需要从数据库中获取数据,但我不知道该怎么做...
它们有“boutiques”表和“boutiques_categories”以及它们之间的关系表,名称为“boutiques_categories_categories”
这里是如何设置的:
boutiques
id name
1 X_boutiques2_name
2 Y_boutiques_name
Boutique2
id name
1 X_boutiques2_name
2 Y_boutiques2_name
boutiques_categories
id name
1 X_categorie_name
2 Y_categorie_name
boutiques_categories_categories
boutique_id categorie_id
X_boutique_id X_categorie_id
Y_boutique_id Y_categorie_id
我想创建一个 SQL 来合并和打印数据的 CSV,如下所示:
export
boutiques_id boutique_name boutiques_categories_categorie_name
boutiques2_id boutique2_name boutiques_categories_categorie_name
我正在尝试 UNION 那两个表
SELECT A.*
FROM boutiques A
UNION select B.* FROM boutiques2 B
它正在工作,但现在我需要加入类别名称,但我不知道该怎么做。试过了:
SELECT A.*
FROM boutiques A
UNION select B.*
FROM boutiques2 B
left join
boutiques_categories BC ON BC.id =
(
SELECT BCC.categorie_id
FORM
boutiques_categories_categories BCC
WHERE BCC.boutique_id = BC.id
)
但是我遇到了无法解决的 MYSQL 错误。
#1242 - Subquery returns more than 1 row
感谢您的宝贵时间。
【问题讨论】:
-
您不需要使用
union。这用于将多个选择语句作为单个结果返回。join语法就是您所需要的。 -
但是我确实需要多个选择语句,因为我需要从精品店和精品店2中选择数据,然后将类别名称添加到精品店数据中。
-
抱歉,我正要在重新阅读您的问题后编辑我的评论。你对工会的看法是对的。如果在此期间没有其他人回答,我会尽快写一个查询。
-
非常感谢,我仍在努力解决我的问题,但我不是 SQL 专家!
-
请正确格式化代码。其他人很难阅读。
标签: mysql database phpmyadmin export-to-csv