注意几点

  1. insert into...values 如果要插入多行,指令是 values <row1>,<row2>...多行之间用逗号隔开;
  2. AI类型的列,在插入时用null/default关键字补位,在插入时sql会自动计算各行应有的值;
  3. interval 时间间隔关键字,常和date_add() 或 date_sub()搭配使用。

以下表达正确

A.T_DATE = B.T_DATE+ interval '1' hour	1小时以后
A.T_DATE = B.T_DATE+ interval 1 hour	1小时以后
A.T_DATE = B.T_DATE+ interval +1 hour	1小时以后
A.T_DATE = B.T_DATE+ interval -1 hour	1小时之前
A.T_DATE = B.T_DATE+ interval '-1' hour	1小时之前
A.T_DATE = B.T_DATE+ interval -'1' hour	1小时之前
A.T_DATE = B.T_DATE- interval -'1' hour	1小时之后(负负得正)

以下表达错误

A.T_DATE = B.T_DATE interval '1' hour 错。单独的interval需要跟在加减运算符后,如果使用date_add()或date_sub()则可以省略B.T_DATE和interval之间的运算符。

题解答案

insert into exam_record
VALUES (null,1001,9001,'2021-09-01 22:11:12','2021-09-01 22:11:12' +INTERVAL 50 minute,90),
(null,1002,9002,'2021-09-04 07:01:02',null,NULL);

或者

insert into exam_record(uid,exam_id,start_time,submit_time,score) 
VALUES (1001,9001,'2021-09-01 22:11:12','2021-09-01 23:01:12' ,90),
(1002,9002,'2021-09-04 07:01:02',null,NULL);