我有两个带有列的表,如下所示:


khs(id,年,程序,codemk)
主题(id,年份,程序,codemk,namemk,tm,pr,lp)


我想要一个包含以下内容的结果:

codemk, namemk, tm, pr, lp


注意:year表中的programcodemkkhs字段在subjects表中也不都是唯一的。但是,将这些字段的3个值结合起来就可以得到一个唯一值。

我尝试了这个:

SELECT khs.id khs.codemk, subjects.namemk, subjects.tm, subject.pr, subjects.lp
FROM khs
RIGHT JOIN subjects
ON khs.year + khs.program +khs.codemk = subjects.year + subjects.program + subjects.codemk;


但是tmprlp的结果不是我期望的。我想念什么?抱歉,我是MySQL的新手,如何在新表视图中创建它。
提前致谢。

最佳答案

也许这样:

SELECT khs.id khs.codemk, subjects.namemk, subjects.tm, subject.pr, subjects.lp
FROM khs
RIGHT JOIN subjects
ON khs.year=subjects.year, khs.program =subjects.program, khs.codemk = subjects.codemk;


但不确定是否是您要的,否则:

SELECT khs.id khs.codemk, subjects.namemk, subjects.tm, subject.pr, subjects.lp
FROM khs
RIGHT JOIN subjects
ON CONCAT(khs.year,khs.program, khs.codemk) = CONCAT(subjects.year, subjects.program, subjects.codemk);

关于php - MySQL如何将2列值合并为2列值,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/28349722/

10-12 12:58