insert语句

deyfvvtc  于 2021-07-29  发布在  Java
关注(0)|答案(1)|浏览(269)
insert into students_learn_subjects(student_id,subject_id) 
select max(id) from students, subject_id from classes_have_subjects where class_id = 5)

我想在表中插入值,但从其他表中检索这些值。通过这个查询,我得到了这个错误。第二个select语句返回多个值,但第一个语句只返回一个值
错误:“from”处或附近的语法错误
第2行:从学生中选择max(id),从班级中选择科目id。。。

7gcisfzg

7gcisfzg1#

我想这就是你想要的:

INSERT INTO students_learn_subjects (student_id, subject_id) 
SELECT
    (SELECT MAX(id) FROM students),
    subject_id
FROM classes_have_subjects
WHERE class_id = 5;

这假设针对 classes_have_subjects 表将返回多条记录。对的最大查询数 students 根据定义,必须始终返回单个标量值,以便它可以位于单独的子查询中。

相关问题