我有3张桌子
表1 EIN栏:
id, name, plate,in_datetime,time,image-name.
表2 EOUT列:
id, name, plate, out_datetime, time, image-name.
表3重新调整列:
id, plate,in_datetime,in_entry_id,out_datetime, out_entry_id,Processed, duration.
我需要使用where条件将表1和表2的值放入表3列中。 我使用以下查询:
INSERT INTO recon (id,EIN.plate,EIN.in_datetime, EIN.id, EOUT.out_datetime, EOUT.id,null, null)
SELECT EIN.RegistrationMark,EIN.datetime,EIN.id, EOUT.date,EOUT.id FROM EIN_anpr_vega as EIN, EOUT_anpr_vega as EOUT
where EIN.plate = EOUT.plate
and EIN.in_datetime = EOUT.out_datetime
我在null附近收到错误,null。以下是错误。
for the right syntax to use near 'null, null
答案 0 :(得分:1)
在你的列名中你不能写null
INSERT INTO recon (id,EIN.plate,EIN.in_datetime, EIN.id, EOUT.out_datetime, EOUT.id,null, null)
而是编写列名并将空值放在select中。像这样:
INSERT INTO recon (id,EIN.plate,EIN.in_datetime, EIN.id, EOUT.out_datetime, EOUT.id,col1, col2)
SELECT EIN.RegistrationMark,EIN.datetime,EIN.id, EOUT.date,EOUT.id, null, null FROM EarlsdonMSIN_anpr_vega as EIN, EarlsdonMSOUT_anpr_vega as EOUT
where EIN.plate = EOUT.plate
and EIN.in_datetime = EOUT.out_datetime
答案 1 :(得分:0)
INSERT INTO recon (id, EIN.plate ...) VALUES ...
第一个()中的内容应该是表recon
的列名。 (我很惊讶它没有显示EIN.plate
的语法错误。)
是的,稍后,null
会因为同样的原因而遇到麻烦 - 它不是列名。