合并来自三个不同数据库表的列

时间:2013-06-12 08:47:38

标签: sql

我沉迷于这个问题,并试图自己修复它,但我无法解决它。

我的数据库中有3个表:

  1. 分类
  2. jo_post_cat
  3. 如何使用SQL语句,如下所示:

    SELECT * 
    FROM post 
    INNER JOIN jo_post_cat on post.ID = jo_post_cat.j_postid 
    LEFT JOIN category as ca on jo_post_cat.j_catid = ca.ca_id
    

    从图片中可以看出ID不是唯一的,但我的ca_id ca_name是唯一的。我想在同一行中合并ca_id ca_name?我想用这种格式Num 1, Num 2

2 个答案:

答案 0 :(得分:0)

你需要在同一行显示ca_id和ca_name吗?比如ca_id-ca_name,如果是这种情况,则附加两列数据并显示。

答案 1 :(得分:0)

如果您正在使用SQL Server

,这应该可以满足您的需求
SELECT 'Num' + ca.ca_id + ', ' + ca_name AS combinedName
FROM post 
    INNER JOIN jo_post_cat on post.ID = jo_post_cat.j_postid 
    LEFT JOIN category as ca on jo_post_cat.j_catid = ca.ca_id

这将返回

combinedName
Num 1, Num 1
Num 2, Num 2