通过第三个表连接两个没有外键的表

时间:2014-05-21 10:36:37

标签: mysql sql

我们说我有三张桌子:A,B和C.

我想加入A和C,但是没有从A到C或从C到A的foriegn键,但B有来自它们的foriegn键!

我想在A中更新一行但在条件中取决于C中记录的值!! 我希望我能说清楚这一点,对不起我糟糕的英语。提前谢谢!!

1 个答案:

答案 0 :(得分:1)

我不认为您的问题特别清楚,但如果我理解正确,您希望根据表C中的约束更新表A.下面的内容将起作用:

UPDATE
    a
SET
    columnName = 'newValue'
FROM
    a
    INNER JOIN b ON a.columnA = b.columnA
    INNER JOIN c ON c.columnC = b.columnC
WHERE
    c.columnName = 'condition'

您可能还会发现以下问题很有用: