设为首页收藏本站Access中国

Office中国论坛/Access中国论坛

 找回密码
 注册

QQ登录

只需一步,快速开始

返回列表 发新帖
查看: 2698|回复: 5
打印 上一主题 下一主题

[查询] “文化休克”——再谈“随机安排”事件

[复制链接]
跳转到指定楼层
1#
发表于 2011-10-23 23:16:57 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
本帖最后由 roych 于 2011-10-24 02:09 编辑

       据闻,美国人吃牛排,是切一块吃一块的,而欧洲人则是切完后再吃。于是美国人觉得欧洲人很浪费,“切那么多吃得了吗”?而欧洲人则对美国人的吃法有些鄙夷,“有那么猴急吗,切一块就吃一块”?
       据闻,古希腊人认为,只要不断地往地上挖,挖穿之后就能见到中国人,他们是用头顶走路的。
       据闻,丹麦童话作家安徒生每天早上都在屋后的小溪旁吹笛子,他认为,只要笛声足够动听,中国皇帝就会从溪水中钻出来,然后会和他握手。
       …………
       有人把这称为“文化休克”,意思是说,由于文化差异导致我们对别人的习惯理解不一。正如在牛排的吃法上,美国人无法理解欧洲人,欧洲人同样无法理解欧洲人。

       Access也是这样,从不同的方式上思考,同样会得到不同的算法。
       像“随机安排”事件,我们可以先随机排好顺序,再逐个把数据添加到表中,这是ADO的算法。前面已经写了两个例子了,这里不再解释。也可以先随机排序追加到表中,再删除重复部分,再追加剩余数据,多次执行最后两个步骤,从而达到随机顺序不重复的目的。
       这个例子是基于Jacky_C的求助而作(详细请参考:http://www.office-cn.net/thread-106483-1-1.html),希望他能看到。在这里,我还希望大家能够通过不同的思考方式(或者说算法)来加深对Access的理解。

       ——本来可以用更浅显的宏来执行,只是刚接触Access 2010,部分功能不熟悉,只得写执行操作查询的代码。稍稍解释下代码中的循环为什么是4次的问题。我们知道,按随机抽取的几率来计算,每次都有1/6的几率是重复的。因此每次需要删除的大体的记录条数如下:
       253\6=42;42\6=7;7\6=1;1\6=0
       当然,这只是我的一个猜想。如果有兴趣的话,大家可以多增加一些数据来测试下。
      

本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有帐号?注册

x

评分

参与人数 1经验 +10 收起 理由
todaynew + 10 赞一个!

查看全部评分

分享到:  QQ好友和群QQ好友和群 QQ空间QQ空间 腾讯微博腾讯微博 腾讯朋友腾讯朋友
收藏收藏 分享分享 分享淘帖 订阅订阅
2#
发表于 2011-10-24 08:30:38 | 只看该作者
谢谢分享

点击这里给我发消息

3#
发表于 2011-10-24 08:52:58 | 只看该作者
有意思,与老汉比肩了,谢谢分享
4#
发表于 2011-10-24 10:47:41 | 只看该作者
有意思,与老汉比肩了,谢谢分享
5#
发表于 2016-1-20 17:29:17 | 只看该作者
越来越像todaynew 的风格了
6#
发表于 2016-1-21 13:55:06 | 只看该作者
感谢分享
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 注册

本版积分规则

QQ|站长邮箱|小黑屋|手机版|Office中国/Access中国 ( 粤ICP备10043721号-1 )  

GMT+8, 2024-11-25 07:51 , Processed in 0.089059 second(s), 35 queries .

Powered by Discuz! X3.3

© 2001-2017 Comsenz Inc.

快速回复 返回顶部 返回列表