笛卡尔积的解释和作用[通俗易懂]

笛卡尔积的解释和作用[通俗易懂]一:笛卡尔积的解释例给出二个域:假设集合A={a,b},集合B={0,1,2},则两个集合的笛卡尔积为{(a,0),(a,1),(a,2),(b,0),(b,1),(b,2)}。。类似的例子有,如果A表示某学校学生的集合,B表示该学校所有课程的集合,则A与B的笛卡尔积表示所有可能的选课情况。[编辑本段]笛卡尔积的运算性质  由于有序对<x,y>中x,y的位置是确定的,因此A×B…

大家好,又见面了,我是你们的朋友全栈君。

一:笛卡尔积的解释

例 给出二个域:
假设集合A={a,b},集合B={0,1,2},则两个集合的笛卡尔积为{(a,0),(a,1),(a,2),(b,0),(b,1),(b,2)}。。类似的例子有,如果A表示某学校学生的集合,B表示该学校所有课程的集合,则A与B的笛卡尔积表示所有可能的选课情况。 [编辑本段]笛卡尔积的运算性质  由于有序对<x,y>中x,y的位置是确定的,因此A×B的记法也是确定的,不能写成B×A.
  笛卡尔积也可以多个集合合成,A1×A2×…×An.
  笛卡尔积的运算性质. 一般不能交换.
  笛卡尔积,把集合A,B合成集合A×B,规定
  A×B={<x,y>½xÎAÙyÎB}
  在任意集合A上都可以定义笛卡尔积因为对任意两个集合A和B,用A中元素为第一元素,B中元素为第二元素构成有序对,所有这样的有序对组成的集合就是集合A和B的笛卡尔积.当集合A = B 时,笛卡尔积就记作A A. [编辑本段]推导过程  给定一组域D1,D2,…,Dn,这些域中可以有相同的。D
  例 给出三个域:
  D1=SUPERVISOR ={ 张清玫,刘逸 }
  D2=SPECIALITY={计算机专业,信息专业}
  D3=POSTGRADUATE={李勇,刘晨,王敏}
  则D1,D2,D3的笛卡尔积为D:
  D=D1×D2×D3 =
  {(张清玫,计算机专业,李勇),(张清玫,计算机专业,刘晨),
  (张清玫,计算机专业,王敏),(张清玫,信息专业,李勇),
  (张清玫,信息专业,刘晨),(张清玫,信息专业,王敏),
  (刘逸,计算机专业,李勇),(刘逸,计算机专业,刘晨),
  (刘逸,计算机专业,王敏),(刘逸,信息专业,李勇),
  (刘逸,信息专业,刘晨),(刘逸,信息专业,王敏) }

二:笛卡尔积的应用

某些情况下,用于 寻找连续日期中残缺的数据 的时候,可以先笛卡尔积做一个排列组合。然后和目标表进行关联,查找哪些数据缺少了。

例如有个考勤记录表,记录着100个人的2011年4月的考勤信息,理论上这些人应该每天都有记录的。
但是实际上某些人在某些天上面的数据,缺少了。
一天一天的查询,还是一个人一个人的查询,都有些麻烦。
这种情况下,可以针对 每个人 与 每一天 做一个 笛卡尔积 的处理。
然后与实际的表去关联。就很容易查询出结果了。

三:原理

MySQL的多表查询(笛卡尔积原理)
先确定数据要用到哪些表。
将多个表先通过笛卡尔积变成一个表。
然后去除不符合逻辑的数据(根据两个表的关系去掉)。
最后当做是一个虚拟表一样来加上条件即可。

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 举报,一经查实,本站将立刻删除。

发布者:全栈程序员-站长,转载请注明出处:https://javaforall.net/157324.html原文链接:https://javaforall.net

赞 (0)
全栈程序员-站长的头像全栈程序员-站长


相关推荐

  • vue点击复制_js获取复制的内容

    vue点击复制_js获取复制的内容Vue中配合clipboard.js实现点击按钮复制内容

    2022年4月21日
  • tcpdump抓包命令怎么用_tcpdump指定ip抓包命令

    tcpdump抓包命令怎么用_tcpdump指定ip抓包命令今天要给大家介绍的一个Unix下的一个网络数据采集分析工具,也就是我们常说的抓包工具。与它功能类似的工具有wireshark,不同的是,wireshark有图形化界面,而tcpdump则只有命令行。由于我本人更习惯使用命令行的方式进行抓包,因此今天先跳过wireshark,直接给大家介绍这个tcpdump神器。这篇文章,我肝了好几天,借助于Linux的man帮助命令,我把tcpdump的用法全部研究了个遍,才形成了本文,不夸张的说,应该可以算是中文里把tcpdump.

    2022年8月20日
  • js判断是否包含指定字符串_js字符串包含字符串

    js判断是否包含指定字符串_js字符串包含字符串我是想在js中判断字符串是否包含某个中文,将方法记录起来,这些方法也适用于数字、字母。实践是检验真理的唯一标准,还是要多多测试啊。String对象的方法方法一:indexOf()vargroupName=”小白A组”;alert(‘groupName.indexOf()=’+(groupName.indexOf(“组”)!=-1));//trueindex…

    2022年10月7日
  • jxls工具导出excel,报错:Cannot load XLS transformer. Please make sure a Transformer implementation is in cl[通俗易懂]

    jxls工具导出excel,报错:Cannot load XLS transformer. Please make sure a Transformer implementation is in cl[通俗易懂]jxls导出excel报错:“`javajava.lang.reflect.InvocationTargetException:nullatsun.reflect.NativeMethodAccessorImpl.invoke0(NativeMethod)~[na:1.8.0_101]atsun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)~[na:1.8.0_101…

    2022年7月24日
  • 解决”‘pip’ 不是内部或外部命令,也不是可运行的程序或批处理文件”的问题[通俗易懂]

    解决”‘pip’ 不是内部或外部命令,也不是可运行的程序或批处理文件”的问题[通俗易懂]大家好,我是Connor,今天我为大家带来解决CMD命令无法直接运行’点子’进行安装库的问题。今天本来想安装库来着,但是苦于pycharm的设置里不知道出了什么原因,无奈只能使用PIP功能来安装库了,但是输入PIP的时候发现’PIP’不是内部或外部命令,也不是可运行的程序或批处理文件,那这个问题该怎么解决呢?今天就告诉大家解决办法【解决方法】1.找到自己的库的安装路径本…

    2022年5月24日
  • gridbaglayout布局_gridsearch

    gridbaglayout布局_gridsearch自己想做个小程序,却在布局上犯了难,使用FlowLayout和BorderLayout这些功能不够强大,使用GridBagLayout却不会,只好求助于文档了。文档对这个布局管理器介绍很详细,但是最痛苦的是英文。不过幸好它有实例,经过在网上查阅和推敲实例,终于对GridBagLayout的使用有了一个成型的了解,拿出来与大家分享。GridBagLayout是一个灵活的布局管理器,部件如果想

    2022年9月9日

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

关注全栈程序员社区公众号