MySQL语法之INSERT语句问题

MySQL语法之INSERT语句问题


在做Mysql和Python交互的一个练习案例中老师演示了如下语法:

    ​

    ​INSERT INTO t_new_emp SELECT * FROM t_emp WHERE deptno in (10,20)


这个语法结构只知道结果会怎样,但是我不能理解其结构,是否老师有省略可以省略的关键字,因为在学INSERT语句时好像啊,我记忆里没出现过这样的格式。所以希望老师解答一下


在作综合测试卷时 遇到一题:    

    ​INSERT 语句里面 可以用多行子查询进行数据插入,这句话是错的但是 上面一个问题中 的确又是用了子查询的,所以我又不能理解了

正在回答

登陆购买课程后可参与讨论,去登陆

1回答

同学,你好,

1、INSERT语句中的SELECT子查询可用于将一个或多个表中的值添加到另一个表中。使用 SELECT 子查询还可以同时插入多行,这种插入子查询不用写 VALUES

INSERT INTO 表名 as a (
a.列1,a.列2,a.列3...
)
SELECT
b.列1,b.列2,b.列3...
FROM 表名 as b
WHERE 条件;1

2、在使用values时,不可以使用多行子查询的

http://img1.sycdn.imooc.com//climg/5ff3d7bc09fc422009990171.jpg


问题已解决,确定采纳
还有疑问,暂不采纳

恭喜解决一个难题,获得1积分~

来为老师/同学的回答评分吧

0 星
请稍等 ...
微信客服

购课补贴
联系客服咨询优惠详情

帮助反馈 APP下载

慕课网APP
您的移动学习伙伴

公众号

扫描二维码
关注慕课网微信公众号

在线咨询

领取优惠

免费试听

领取大纲

扫描二维码,添加
你的专属老师