MySQL的;一列中的不同ID?

时间:2015-09-17 03:55:04

标签: mysql sql

非常感谢任何帮助。

我现在正在使用此查询。

SELECT t.itemID, RepID, InsRepairID
    FROM tbl_item t
        left join tbl_insiderepair i on i.itemID = t.itemID
        left join tbl_underrepair u on u.itemID = t.itemID
    where(i.itemID = t.itemID Or u.itemID = t.itemID);

结果就是这样。

itemID     |     RepID     |     InsRepairID
1                       3                     null
2                      null                    1
3                      null                    2

现在我想制作' RepID和InsRepairID列' (他们将来自不同表格的ID)改为一栏。

3 个答案:

答案 0 :(得分:1)

使用Union您可以添加两个表显示在一个列中

Select  itemID, RepID from  tbl_item
union
SELECT   itemID,InsRepairID from tbl_insiderepair

答案 1 :(得分:0)

您可以使用ifnull sql函数,如下所示:

SELECT t.itemID, IFNULL(RepID, InsRepairID) ID
FROM tbl_item t
left join tbl_insiderepair i on i.itemID = t.itemID
left join tbl_underrepair u on u.itemID = t.itemID

答案 2 :(得分:0)

SELECT t.itemID, COALESCE(RepID, InsRepairID)
    FROM tbl_item t
        left join tbl_insiderepair i on i.itemID = t.itemID
        left join tbl_underrepair u on u.itemID = t.itemID
    where(i.itemID = t.itemID Or u.itemID = t.itemID);