我创建了三个表,我的查询工作正常,但我试图连接两列,但我收到错误。
以下代码从3个不同的表中获取信息
(SELECT
programme_date, prog_start_time, walk_title, guide_fname, guide_sname
FROM
programme, walk, guide)
此代码连接正在运行。
SELECT CONCAT(guide_fname, guide_sname) AS guide_fullname
FROM guide
我希望将两个查询的所有查询组合在一起。有人可以帮忙吗?
感谢您的帮助。
答案 0 :(得分:0)
我要去承担你们桌子的结构和关系。
您需要使用INNER JOIN
使用PRIMARY KEY
和相关FOREIGN KEY
列将表连接在一起。
另外,我建议使用CONCAT_WS
代替CONCAT
,因为它可以更好地处理NULL
值。
SELECT programme_date, prog_start_time, walk_title, CONCAT_WS(' ', guide_fname, guide_lname) as fullname
FROM programme AS p
INNER JOIN walk AS w ON w.programme_id = p.id
INNER JOIN guide AS g ON g.id = w.guide_id