insert into ... select ... where ... join
这样的语法为什么会报错?
例如:
insert into T2(c1, c2, c3)
select
t1.c1,
t1.c2,
t1.c3
from T1 t1
where
t1.c2 = 'y'
left join T3 t3 on t1.c1 = t3.c1
left join T4 t4 on t1.c1 = t4.c1;
select
t1.c1,
t1.c2
from T1 t1
left join T3 t3 on t1.c1 = t3.c1
left join T4 t4 on t1.c1 = t4.c1
where t1.c2 = 'y';
RTFM
楼主注意代码T2(c1, c2, c3)
里面需要插入的是三个字段
补充:
在多表进行连接查询时,应先使用on生成临时表,然后使用where进行SQL数据过滤操作。
字段数量不一致!!