求助一条SQL:把一个表中的部分数据抽出来,插入到另外一个表中。

beiyanglove 2005-11-30 04:51:43
VB6,ACCESS2000开发系统。碰到一个小问题

假设存在TABLE1,TABLE2,表结构完全相同,TABLE2为空表。
TABLE1中数据如下
ID
1
2
3
4
5

我希望把其中的一部分数据(例如1,2,3)抽出来,
插入到表TABLE2中。
ID
1
2
3

我写成下面这样,报错!
INSERT INTO TABLE2 VALUES(SELECT * FROM TABLE1 WHERE ID<='3');

请问这个SQL应该怎么写?
请各位指教!

...全文
233 7 打赏 收藏 转发到动态 举报
写回复
用AI写文章
7 条回复
切换为时间正序
请发表友善的回复…
发表回复
beiyanglove 2005-11-30
  • 打赏
  • 举报
回复
lqdh2334的方法:
不要values試試 直接INSERT INTO TABLE2(SELECT * FROM TABLE1 WHERE ID<='3');
行不通,报错。

bobdog1215(林夕)的方法:
Select * into Table2 from Table1 where id<=3
可行,但是会弹出提示框:Table2已经存在,是否删除。
选择“是”才能把数据插进去。

bbhere(阿忠 的方法可行:
INSERT INTO TABLE2 (id) SELECT * FROM TABLE1 WHERE ID<='3'
稍微改动一下:
INSERT INTO TABLE2(ID) SELECT * FROM TABLE1 WHERE ID<='3' ORDER BY ID;
顺序就和原先一样了。

感谢各位,马上结帖!
bbhere 2005-11-30
  • 打赏
  • 举报
回复
INSERT INTO TABLE2 (id) SELECT * FROM TABLE1 WHERE ID<='3'
lqdh2334 2005-11-30
  • 打赏
  • 举报
回复
括號也不要,呵呵
fxy_2002 2005-11-30
  • 打赏
  • 举报
回复
回得这么快,我同意的是 lqdh2334, bobdog1215(林夕) 的做法没用过。 :-)
fxy_2002 2005-11-30
  • 打赏
  • 举报
回复
同意楼上。
bobdog1215 2005-11-30
  • 打赏
  • 举报
回复
Select * into Table2 from Table1 where id<=3
lqdh2334 2005-11-30
  • 打赏
  • 举报
回复
不要values試試 直接INSERT INTO TABLE2(SELECT * FROM TABLE1 WHERE ID<='3');

7,763

社区成员

发帖
与我相关
我的任务
社区描述
VB 基础类
社区管理员
  • VB基础类社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧