Mysql 如何在行中插入来自其他表的值?

Mysql 如何在行中插入来自其他表的值?,mysql,sql,select,mysql-workbench,sql-insert,Mysql,Sql,Select,Mysql Workbench,Sql Insert,我有3个Mysql表 一张有班级、实验室及其id的表格 一张有教师名单和主题的桌子。 一张将成为日程表的桌子** 我想随机分配一个物理学家到我第三张桌子上的一个物理实验室,这将是时间表 INSERT INTO schedule(teacher_name, class_id) VALUES (select teacher_name from teachers_list where subject="Physicist” order by rand() limit 1, select id fr

我有3个Mysql表

一张有班级、实验室及其id的表格

一张有教师名单和主题的桌子。 一张将成为日程表的桌子**

我想随机分配一个物理学家到我第三张桌子上的一个物理实验室,这将是时间表

INSERT INTO schedule(teacher_name, class_id)
VALUES (select teacher_name from teachers_list where subject="Physicist” order by rand() limit 1, 

select id from lab_list where lab="Physics_lab" order by rand() limit 1);
**这个不行:(


您能帮助我吗?***

我想您需要插入…选择语法以及子查询:

insert into schedule(teacher_name, class_id)
select 
    (
        select teacher_name 
        from teachers_list 
        where subject = 'Physicist'
        order by rand()
        limit 1
    ),
    id
from lab_list
where lab = 'Physics_lab'

另请参阅,阅读此关于如何提问的指南。这非常有帮助!非常有效!我是否可以确保在接下来的提问中,不会选择同一位老师上另一堂课?@Christossaki;可能吧,但您的问题完全缺乏有助于说明如何提问的信息。我建议接受此答案,然后解决一个新问题,添加一个最小的可重复性示例,演示您实际需要的内容(即,来自相关表格的样本数据,以及所需的结果,如表格文本)。