ฉันกำลังทำแบบสอบถามแทรกซึ่งส่วนใหญ่ของคอลัมน์จำนวนมากจะต้องได้รับการอัปเดตเป็นค่าใหม่หากมีคีย์เฉพาะอยู่แล้ว มันจะเป็นดังนี้:
INSERT INTO lee(exp_id, created_by,
location, animal,
starttime, endtime, entct,
inact, inadur, inadist,
smlct, smldur, smldist,
larct, lardur, lardist,
emptyct, emptydur)
SELECT id, uid, t.location, t.animal, t.starttime, t.endtime, t.entct,
t.inact, t.inadur, t.inadist,
t.smlct, t.smldur, t.smldist,
t.larct, t.lardur, t.lardist,
t.emptyct, t.emptydur
FROM tmp t WHERE uid=x
ON DUPLICATE KEY UPDATE ...;
//update all fields to values from SELECT,
// except for exp_id, created_by, location, animal,
// starttime, endtime
ฉันไม่แน่ใจว่าไวยากรณ์ของUPDATE
ประโยคควรเป็นอย่างไร ฉันจะอ้างถึงแถวปัจจุบันจากSELECT
อนุประโยคได้อย่างไร