sql的命令三个表,需要查询,插入。

现在问题是,这样的,我有三个表
user表 字段为:usernumber
email表 字段为,usernumber,id
email2表,字段为,email_id
想要实现的功能为,查询user表,得到usernumber,接着用这个usernumber,作为值,插入到email表中,并返回email表的id,接着用这个id值,作为值再次插入到email2表中。
郁闷一天了实在是不会写。

SET @update_id := 0;
UPDATE email SET usernumber= (select t.usernumber from user 加上条件), id = (SELECT @update_id := id)
加上条件;
UPDATE email2 SET email_id = @update_id;

@这个是什么意思?能完整一点吗

可以写个函数或者存储过程,用两个参数接收usernumber,emailId,然后一层层的传递,赋值就行了