| 网站首页 | 业界新闻 | 小组 | 威客 | 人才 | 下载频道 | 博客 | 代码贴 | 在线编程 | 编程论坛
欢迎加入我们,一同切磋技术
用户名:   
 
密 码:  
共有 2260 人关注过本帖
标题:请教一个问题,需要比较2个表中不同的记录,表过大怎么处理呢?
只看楼主 加入收藏
吹水佬
Rank: 20Rank: 20Rank: 20Rank: 20Rank: 20
等 级:版主
威 望:451
帖 子:10607
专家分:43186
注 册:2014-5-20
收藏
得分:0 
应该是一句快点
SELECT * from ys1 WHERE lxfs NOT in (select lxfs from fs1 )
2021-08-20 21:07
hjlali
Rank: 1
等 级:新手上路
帖 子:48
专家分:0
注 册:2008-12-23
收藏
得分:0 
以下是引用吹水佬在2021-8-20 21:07:01的发言:

应该是一句快点
SELECT * from ys1 WHERE lxfs NOT in (select lxfs from fs1 )

如果没有空格、制表符等特殊字符的时候,这样执行是最好的,但实际上可能会不准。
我刚才执行语句“SELECT * from fs where ALLTRIM(lxfs) NOT in  (SELECT lxfs from ys )”
发现个奇葩的现象,where lxfs 这里加了alltrim函数和不加这个函数,比较出来的结果居然差了一个记录,这个差的记录就是一个有+86,一个没有,不知道是怎么回事,没搞懂VFP里面where in语句是怎么个运行原理。贴图如下:

图片附件: 游客没有浏览图片的权限,请 登录注册
图片附件: 游客没有浏览图片的权限,请 登录注册


图片附件: 游客没有浏览图片的权限,请 登录注册
图片附件: 游客没有浏览图片的权限,请 登录注册


[此贴子已经被作者于2021-8-20 21:41编辑过]


喜欢VFP,就要学懂弄通!
2021-08-20 21:25
吹水佬
Rank: 20Rank: 20Rank: 20Rank: 20Rank: 20
等 级:版主
威 望:451
帖 子:10607
专家分:43186
注 册:2014-5-20
收藏
得分:0 
回复 22楼 hjlali
如果只求有效的数据,肯定要先清理无效的数据。
制表符也有,数据是从其他地方批量导入的吧,最好在数据导入时就严格处理好。
有或无ALLTRIM结果可能不一样,看看有差别的数据记录有什么异常。

2021-08-20 21:44
sdta
Rank: 20Rank: 20Rank: 20Rank: 20Rank: 20
来 自:江苏省连云港市
等 级:版主
威 望:335
帖 子:9841
专家分:27213
注 册:2012-2-5
收藏
得分:0 
有ALLTRIM()函数,速度肯定慢,模拟数据与真实数据还是有差别的,字段数的多少及记录数的多少对时间都是有影响的。

坚守VFP最后的阵地
2021-08-20 22:03
sdta
Rank: 20Rank: 20Rank: 20Rank: 20Rank: 20
来 自:江苏省连云港市
等 级:版主
威 望:335
帖 子:9841
专家分:27213
注 册:2012-2-5
收藏
得分:0 
字段名及类型相同,字段宽度不同,对时间也是有影响的。

坚守VFP最后的阵地
2021-08-20 22:05
hjlali
Rank: 1
等 级:新手上路
帖 子:48
专家分:0
注 册:2008-12-23
收藏
得分:0 
以下是引用吹水佬在2021-8-20 21:44:34的发言:

如果只求有效的数据,肯定要先清理无效的数据。
制表符也有,数据是从其他地方批量导入的吧,最好在数据导入时就严格处理好。
有或无ALLTRIM结果可能不一样,看看有差别的数据记录有什么异常。

请问下VF里的  字段lxfs where in ()语句中,lxfs的值与in()里面lxfs的值对比的时候是精确对比还是包含关系对比?我感觉像是包含关系一样的。

喜欢VFP,就要学懂弄通!
2021-08-20 22:35
hjlali
Rank: 1
等 级:新手上路
帖 子:48
专家分:0
注 册:2008-12-23
收藏
得分:0 
以下是引用sdta在2021-8-20 22:03:26的发言:

有ALLTRIM()函数,速度肯定慢,模拟数据与真实数据还是有差别的,字段数的多少及记录数的多少对时间都是有影响的。

是的,要考虑的因素确实还挺多的,以前少量数据不觉得。
另外请问下VF里的  字段lxfs where in ()语句中,lxfs的值与in()里面lxfs的值对比的时候是精确对比还是包含关系对比?我感觉像是包含关系一样的。

喜欢VFP,就要学懂弄通!
2021-08-20 22:36
吹水佬
Rank: 20Rank: 20Rank: 20Rank: 20Rank: 20
等 级:版主
威 望:451
帖 子:10607
专家分:43186
注 册:2014-5-20
收藏
得分:0 
回复 26楼 hjlali
可以随便找几个数据试一下就清楚
2021-08-20 22:57
hjlali
Rank: 1
等 级:新手上路
帖 子:48
专家分:0
注 册:2008-12-23
收藏
得分:0 
以下是引用吹水佬在2021-8-20 22:57:01的发言:

可以随便找几个数据试一下就清楚

测试了一晚上,好像不是包含关系,但加函数和不加函数结果还是有差别,但是这个差别我没弄明白,单独开了个帖子,邀请你去探讨下,谢谢!!
帖子地址:https://bbs.bccn.net/thread-506598-1-1.html

喜欢VFP,就要学懂弄通!
2021-08-21 12:57
sdta
Rank: 20Rank: 20Rank: 20Rank: 20Rank: 20
来 自:江苏省连云港市
等 级:版主
威 望:335
帖 子:9841
专家分:27213
注 册:2012-2-5
收藏
得分:0 
以下是引用hjlali在2021-8-21 12:57:08的发言:


测试了一晚上,好像不是包含关系,但加函数和不加函数结果还是有差别,但是这个差别我没弄明白,单独开了个帖子,邀请你去探讨下,谢谢!!
帖子地址:https://bbs.bccn.net/thread-506598-1-1.html

两个表lxfs字段宽度不同、内容不同造成的

[此贴子已经被作者于2021-8-21 13:28编辑过]


坚守VFP最后的阵地
2021-08-21 13:26
快速回复:请教一个问题,需要比较2个表中不同的记录,表过大怎么处理呢?
数据加载中...
 
   



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

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