首页 新闻 赞助 找找看

MySQL相关的问题!

0
悬赏园豆:100 [已解决问题] 解决于 2012-07-11 10:48

我现在有两个表tab1和tab2,

tab1的属性为

tab2的属性为

现在想对tab1的数据进行筛选,条件是:提取出满足和tab2中telnum相同的tab1.telnum所在行的数据。

如下,我使用的=条件来判断,效率太低了,指令足足执行了2个多小时。不知道有没有contains这样的指令,能实现这样的功能,菜鸟诚求指导!

select
    sessionid,
    tab1.telnum,
    bgntime,
    endtime
into outfile
  'd:\\data.txt'
from
    tab1,
    tab2
where
    tab1.telnum=tab2.telnum
精神邋遢的民工的主页 精神邋遢的民工 | 初学一级 | 园豆:97
提问于:2012-07-11 09:14
< >
分享
最佳答案
0

据说使用join可以提高这种查询的效率

而且我感觉主要的性能消耗在于into outfile,而不在于查询本身

收获园豆:30
CrazyJinn | 小虾三级 |园豆:799 | 2012-07-11 09:46

非常有可能,建议导入到一个临时表中,然后从临时表里全部导出到txt文件里。

Zigzag | 园豆:70 (初学一级) | 2012-07-11 09:52

@Zigzag: 嗯,这样就解决了,into outfile和=操作重合了,多谢多谢

精神邋遢的民工 | 园豆:97 (初学一级) | 2012-07-11 10:48
其他回答(1)
0
select t1.* from tab2 t2

join tab1 t1 on t2.telnum = t1.telnum

into out file 'd:\\data.txt'

这样呢?但我觉得效率应该差不多,主要是那个等号的问题,varchar 比 varchar。

收获园豆:70
Zigzag | 园豆:70 (初学一级) | 2012-07-11 09:41
清除回答草稿
   您需要登录以后才能回答,未注册用户请先注册