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

笛卡尔积的解释和作用[通俗易懂]一:笛卡尔积的解释例给出二个域:假设集合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)
全栈程序员-站长的头像全栈程序员-站长

相关推荐

  • 【一个小功能】从js判断ie版本,浅谈navigator对象的appName属性[通俗易懂]

    【一个小功能】从js判断ie版本,浅谈navigator对象的appName属性[通俗易懂]判断IE版本主要的是获取两个属性,a.当前浏览器名称,b.当前浏览器版本,为此不得不了解navigator对象。先贴代码作为一个初次了解navigator对象的人,对于appName属性(浏览器名

    2022年7月3日
  • 汇编语言中AX寄存器(aoc32gx)

    目录1.上节回顾2.H2CSGDMA寄存器组2.1H2CSGDMA标识寄存器2.2H2CSGDMA描述符基地址寄存器2.3H2CSGDMA邻接描述符数量寄存器2.4H2CSGDMA描述符信用寄存器3.C2HSGDMA寄存器组4.下节内容1.上节回顾上节我们讲述了ConfigBlock寄存器组,我们今天来看H2CSGDMA/C2HSGDMA寄存器组,如下。H2CSGDMA/C2HSGDMA寄存器组主要是用来描述每个通道DMA描述符相关的一些

    2022年4月18日
  • python可以做什么

    python可以做什么python是什么?python的中文名称是蟒蛇,是一种计算机程序设计语言;是一种动态的、面向对象的脚本语言。最初是用来编写自动化脚本的,随着版本的不断更新和语言新功能的添加,越来越多被用于独立的

    2022年7月3日
  • MyEclipse安装SVN插件详解

    MyEclipse安装SVN插件详解今天弄了一下svn插件,确实不太容易,花了一番功夫才搞定,所以,为了以后不为同样的工作花费时间去学重复的事情,我决定记录一下自己安装SVN插件到MyEclipse的过程。也为苦恼在这事上的朋友提供点资源。首先当然是准备工具咯,svn的插件下载地址:http://www.eclipse.org/subversive/downloads.php#latest_releasesvn-con…

    2022年7月20日
  • PyCharm 2021.5.3 x64激活码永久【在线注册码/序列号/破解码】

    PyCharm 2021.5.3 x64激活码永久【在线注册码/序列号/破解码】,https://javaforall.net/100143.html。详细ieda激活码不妨到全栈程序员必看教程网一起来了解一下吧!

    2022年3月20日
  • 判断完全二叉树

    判断完全二叉树完全二叉树的定义:一棵二叉树,除了最后一层之外都是完全填充的,并且最后一层的叶子结点都在左边。https://baike.baidu.com/item/%E5%AE%8C%E5%85%A8%E4%BA%8C%E5%8F%89%E6%A0%91/7773232?fr=aladdin百度定义 思路:层序遍历二叉树如果一个结点,左右孩子都不为空,则pop该节点,将其左右孩子入队列…

    2022年7月13日

发表回复

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

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