前端网络专家陷入了SQL深渊。以下是我们当前的SQL查询的原型:
INSERT INTO table (table column)
SELECT ad.val1, web.val2, ad.val3
FROM ad
LEFT JOIN web
ON ad.val 4 = web.val4
我们最近添加了一个web.val5列,我们想将其信息插入到与web.val4相同的列中
我使用ALL子句尝试了以下操作:
INSERT INTO table (table column)
SELECT ad.val1, web.val2, ad.val3
FROM ad
LEFT JOIN web
ON ad.val 4 = web.val4
AND ad.val4 = web.val5
但是我一直得到0(或NULL?)。是否可以在LEFT JOIN中添加某个子句,以使一个值等于同一张表中不同列中的两个不同值?抱歉,如果这令人困惑,我自己几乎无法理解。
最佳答案
您可以考虑加入它两次并匹配该条件,例如
INSERT INTO table (table column)
SELECT ad.val1, web.val2, ad.val3
FROM ad
LEFT JOIN web
ON ad.val4 = web.val4
LEFT JOIN web w //second join
ON ad.val4 = w.val5
关于php - SQL-插入选择(多列),我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/38861073/