| 网站首页 | 业界新闻 | 小组 | 威客 | 人才 | 下载频道 | 博客 | 代码贴 | 在线编程 | 编程论坛
欢迎加入我们,一同切磋技术
用户名:   
 
密 码:  
共有 3907 人关注过本帖
标题:讨论将查询的多条数据插入到已有的表中
只看楼主 加入收藏
hurtsky
Rank: 1
等 级:新手上路
帖 子:90
专家分:0
注 册:2008-7-10
结帖率:100%
收藏
 问题点数:0 回复次数:11 
讨论将查询的多条数据插入到已有的表中
有两张表:
 A表有列:姓名,电话号,地址
 B表有列:电话号,通话记录,开始通话时间,通话结束时间

A表与B表没有联系
(假若现在两表中都有满足条件的数据)

   现在我要将在A表中不存在而在B表中有的电话号码查询出来,并且将这些电话号插入到A表中,
而姓名和地址这两列分别用'未知'来替代,如何实现?


本人的做法是将查询出来的数据放在一个视图中,再将视图在的数据插入到A表中,可行
-----------
create view TT
as
 select '未知'as 列1, 电话号 as 列2,'未知' as 列3 from B where 电话号 not in(select 电话号 from A)
-----------
insert into A (姓名,电话号,地址)
select from TT
-------
但觉得有些麻烦,现求各位的新方法,越简单越好!
搜索更多相关主题的帖子: 数据 查询 
2008-09-03 17:36
happynight
Rank: 8Rank: 8
等 级:贵宾
威 望:15
帖 子:807
专家分:760
注 册:2008-4-26
收藏
得分:0 
insert into A (姓名,电话号,地址)
select '未知'as 列1, 电话号 as 列2,'未知' as 列3 from B where 电话号 not in(select 电话号 from A)
呵呵 走到门口了 又绕了个弯
2008-09-03 22:43
hurtsky
Rank: 1
等 级:新手上路
帖 子:90
专家分:0
注 册:2008-7-10
收藏
得分:0 
楼上那位试过没有?
2008-09-06 21:05
zhujiuyi
Rank: 1
等 级:新手上路
帖 子:1
专家分:0
注 册:2008-9-6
收藏
得分:0 
二楼那个应该可以的。。。不过如果数据量大的话,这个方法速度可能会慢啊
2008-09-06 23:09
acupoflife
Rank: 1
等 级:新手上路
帖 子:30
专家分:0
注 册:2007-10-16
收藏
得分:0 
in 的缺点就是数据量大的时候执行速度慢 因为in会遍历表里的每一行数据。
2008-09-08 14:53
hurtsky
Rank: 1
等 级:新手上路
帖 子:90
专家分:0
注 册:2008-7-10
收藏
得分:0 
那感觉还是用视图好些
2008-09-08 19:35
happynight
Rank: 8Rank: 8
等 级:贵宾
威 望:15
帖 子:807
专家分:760
注 册:2008-4-26
收藏
得分:0 
呵呵 不明白你为什么要用视图 是为了速度吗
对视图没有研究 希望讲下目的和其中的奥秘
2008-09-08 19:44
happynight
Rank: 8Rank: 8
等 级:贵宾
威 望:15
帖 子:807
专家分:760
注 册:2008-4-26
收藏
得分:0 
其实不用IN的话还有一种写法 只是我感觉不到其中速度上的差异
贴出来 欢迎高手讲解下
select '未知'as 列1, B.电话号 as 列2,'未知' as 列3 from B
LEFT JOIN A ON A.电话号=B.电话号
where A.电话号=''

上面的代码只是凭印象写的 很久没用过这种方法了 没有调试过 有问题见谅

[[it] 本帖最后由 happynight 于 2008-9-8 19:49 编辑 [/it]]
2008-09-08 19:48
hurtsky
Rank: 1
等 级:新手上路
帖 子:90
专家分:0
注 册:2008-7-10
收藏
得分:0 
回复 7# happynight 的帖子
没别的,我只是想把查出来的数据先放在视图中
再来从视图中插入会快一点
2008-09-08 19:51
hurtsky
Rank: 1
等 级:新手上路
帖 子:90
专家分:0
注 册:2008-7-10
收藏
得分:0 
回复 8# happynight 的帖子
好象没有将数据插入表中这一部啊?
2008-09-08 19:53
快速回复:讨论将查询的多条数据插入到已有的表中
数据加载中...
 
   



关于我们 | 广告合作 | 编程中国 | 清除Cookies | TOP | 手机版

编程中国 版权所有,并保留所有权利。
Powered by Discuz, Processed in 0.041661 second(s), 7 queries.
Copyright©2004-2024, BCCN.NET, All Rights Reserved