更新一个表列以填充另一个表

时间:2015-02-27 02:53:16

标签: java mysql

所以我有两张桌子

明细表

名称 - Admno - ModuleCode - PASS

John,127261,87772, -

candy,923823,2233, -

结果表

Admno - ModuleCode - PASS

127261,87772,是

923823,2233,否

请注意,结果表没有名称,而详细信息表有详细信息表.PASS没有被填充。我正在尝试的是从结果表列'PASS'填充详细信息表列'PASS'两个细节。 admno = result.admno AND detail.ModuleCode = result.ModuleCode

INSERT into detail SET detail.PASS= `result`.PASS FROM
 `result`, detail WHERE `result`.Admno = detail.Admno 
AND `result`.Code = detail.ModuleCode

但我得到的错误是错误代码1064,SQL状态42000:您的SQL语法中有错误;查看与您的MySQL服务器版本对应的手册,以便在“FROM result附近使用正确的语法,详细信息在result。Admno = detail.Admno和result。 ='第1行 第1行第1列

顺便说一句,我在netbean中使用java来做sql语句。

1 个答案:

答案 0 :(得分:0)

您需要使用join语句来组合来自多个表的数据。以下是您正在寻找的内容。

UPDATE detail INNER JOIN `result` ON `result`.Admno = detail.Admno
AND `result`.Code = detail.ModuleCode SET detail.PASS=`result`.PASS