有人可以教我如何将两个表合并为一列MySQL 那有可能吗?还是不?
答案 0 :(得分:2)
如果您需要将结果作为一列,则可以使用concat
SELECT concat(p.id, p.status, p.date, m.pid)
FROM posts p
INNER JOIN post_meta m ON m.pid=p.id
WHERE (status=1 OR status=4)
ORDER BY date DESC
但是您需要显式列(您所需要的),但无需选择*
或者您正在寻找group_concat
SELECT group_concat(p.title)
FROM posts p
INNER JOIN post_meta m ON m.pid=p.id
WHERE (status=1 OR status=4)
答案 1 :(得分:1)
是的。绝对可以在SQl(MySql / SqlSvr)中将表连接在一起。
(INNER)JOIN:选择两个表中具有匹配值的记录。
左(外)联接:从第一个(最左侧)表中选择具有匹配的右表记录的记录。
右(外)联接:从第二个(最右)表中选择具有匹配的左表记录的记录。
完全(外部)联接:选择与左或右表记录匹配的所有记录。
所有INNER和OUTER关键字都是可选的。
让我们详细了解本教程。 https://www.dofactory.com/sql/left-outer-join
答案 2 :(得分:1)
似乎重复了How can I merge the columns from two tables into one output?
提供有关如何加入以获得完整响应的更多详细信息。输入和预期输出会更好。
答案 3 :(得分:1)
简单答案
Select * From table1 t1 INNER JOIN table2 t2 on t1.col1 = t2.col1;
您可以使用INNER
来获取结果,在该数据上应在与col1相对应的两个表上都存在数据
您可以使用LEFT
来获取结果,在该结果中,应在与col1相对应的第一个表上显示数据,而不必在第二个表上显示数据
您可以使用RIGHT
来获取结果,其中数据应存在于与col1相对应的第二个表中,而不必存在于第一个表中