用于自动化关系查询的数据驱动自然界面的制作方法

文档序号:6495741阅读:208来源:国知局
用于自动化关系查询的数据驱动自然界面的制作方法
【专利摘要】提供了用于自动化关系查询的数据驱动自然界面。用容易选择的方式在一表面上显示多个数据集。在检测到对数据集的选择以及该数据集到另一表面的移动时,被移动的数据可被呈现在该另一表面上。在检测到对另一数据集的选择以及该另一数据到该另一表面的移动时,计算被移动的数据集之间的联合路径,数据集被联合,并且在该另一表面上显示结果。当新数据集被移动到该另一表面时,该系统继续将新选择的数据与现有数据联合,从而允许查询结果在用户注视之前成形,而无需测试或执行查询。
【专利说明】用于自动化关系查询的数据驱动自然界面
[0001]背景
[0002]现代技术已经能够实现行进中的快速计算以满足各种各样的用户要求。技术进步已经渗透到跨各种各样的平台的集成电路中,诸如便携式设备。技术扩展了诸如汽车等机器的用途。技术扩展还导致了增加的系统复杂度。复杂度的提升导致了在常用日常任务和信息消费方面增加的多样性。在多样的世界中,设备的全球网络以文明社会中前所未有的不断增长的速率继续生成和消费存储在数据库中的信息。
[0003]在传统数据库客户端中,用户能够使用特定查询来与数据库表交互并且组合数据库表。利用标准化句法来构造查询以根据用户要求组合数据集。然而,对复杂数据库表组合的要求可能使数据库专家用户资源负担过重。有限的数据库专家用户可用性可能影响下游项目进度并且降低生产力。在以数据为中心的世界中,当数据消费者的要求太沉重使得业务容量不能负担以适应此类要求时,提供特定数据驱动的解决方案可影响业务存活性。
[0004]概述
[0005]提供本概述是为了以简化的形式介绍将在以下详细描述中进一步描述的一些概念。本概述并不旨在专门标识所要求保护的主题的关键特征或必要特征,也不旨在用于帮助确定所要求保护的主题的范围。
[0006]各实施例涉及提供用于自动化关系查询的数据驱动自然界面。应用可以用容易选择的方式在一表面上显示多个数据集。在检测到对一数据集的选择以及该数据集到另一表面的移动时,可在该另一表面上呈现被移动的数据。在检测到对另一数据集的选择以及该另一数据集到该另一表面的移动时,可以计算被移动的数据集之间的联合路径,随后数据集被联合并且在该另一表面上显示结果。根据一些实施例,当新数据集被移动到该另一表面时,该系统可继续将新选择的数据与现有数据联合,从而允许查询结果在用户注视之前成形,而无需测试或执行查询。
[0007]通过阅读下面的详细描述并参考相关联的附图,这些及其他特点和优点将变得显而易见。可以理解,前述一般描述和以下的详细描述都是说明性的,并且不限制所要求保护的各方面。
【专利附图】

【附图说明】
[0008]图1是示出采用用于在客户端应用中自动合成和执行关系查询的数据驱动自然界面的系统的示例组件的图示;
[0009]图2示出了用于自动合成关系查询的数据驱动自然界面的示例动作图;
[0010]图3A到3C示出了根据一些实施例的提供用于自动合成关系查询的数据驱动自然界面的示例;
[0011]图4是其中可实现根据各实施例的系统的联网环境;
[0012]图5是其中可实现各实施例的示例计算操作环境的框图;以及
[0013]图6示出了根据各实施例的采用用于自动合成关系查询的数据驱动自然界面的过程的逻辑流程图。[0014]详细描述
[0015]如上简述的,数据驱动自然界面可在客户端应用使用来自动地合成关系查询。多个数据集可在一个表面上显示。在检测到将一个数据集从该表面拖拽到另一表面时,可以在该另一表面上显示该数据集。在检测到将另一数据集拖拽到该另一表面时,可以在被拖拽的数据集之间执行联合操作并且在没有手动干预或查询构造的情况下在该另一表面上显示结果。在下面的详细描述中,将参考构成本发明的一部分的附图,在附图中,通过例图,示出了特定实施例或示例。可组合这些方面,可利用其他方面,并且可以做出结构上的改变而不背离本发明的精神或范围。因此,以下详细描述并不旨在限制,并且本发明的范围由所附权利要求及其等效方案来限定。
[0016]尽管在结合在计算设备上的操作系统上运行的应用程序执行的程序模块的一般上下文中描述了各实施例,但是本领域的技术人员会认识到各方面也可以结合其它程序模块实现。
[0017]一般而言,程序模块包括执行特定任务或实现特定抽象数据类型的例程、程序、组件、数据结构和其他类型的结构。此外,本领域的技术人员可以明白,各实施例可以用其他计算机系统配置来实施,包括手持式设备、多处理器系统、基于微处理器或可编程消费电子产品、小型计算机、大型计算机以及类似计算设备。各实施例还能在任务由通过通信网络链接的远程处理设备来执行的分布式计算环境中实现。在分布式计算环境中,程序模块可位于本地和远程存储器存储设备两者中。
[0018]各实施例可被实现为计算机实现的过程(方法)、计算系统、或者诸如计算机程序产品或计算机可读介质等制品。计算机程序产品可以是计算机系统可读并且编码包括用于使计算机或计算系统执行示例过程的指令的计算机程序的计算机存储介质。计算机可读存储介质是非瞬态的计算机可读存储器设备。计算机可读存储介质可例如通过易失性计算机存储器、非易失性存储器、硬盘驱动器、闪存驱动器、软盘或紧致盘以及类似物理存储介质中的一个或多个来实现。
[0019]贯穿本说明书,术语“平台”可以是利用用于合成关系查询的数据驱动自然界面的软件和硬件组件的组合。平台的示例包括但不限于,在多个服务器上执行的托管服务、在单个服务器上执行的应用以及类似系统。术语“服务器” 一般指通常在联网环境中执行一个或多个软件程序的计算设备。然而,服务器还可以被实现为在被视作网络上的服务器的一个或多个计算设备上执行的虚拟服务器(软件程序)。在下面将提供关于这些技术和示例操作的详细细节。
[0020]根据一些实施例的用户界面可以是根据一实施例的双窗格界面。这些窗格可以彼此相邻。这些窗格可由可调节的分栏符来隔开。这些窗格之一可以显示数据集,诸如来自数据库的数据表。数据集可由单个的记录来填充。管理用户界面的应用可缩放数据集的大小以将数据库中存储的所有数据集都纳入窗格中。该应用还可显示可滚动数据表结构以使数据集能够纳入窗格中。替换地,该应用可允许用户仅选择要被显示的一些数据集。在一个示例中,该应用可将数据集名称加载到选择控件(诸如下拉菜单)中,并且允许用户在数据集名称上点击以在窗格中进行显示。在其他实施例中,用于显示数据集的表面可具有任何形状或大小。例如,用于显示要被选择的数据集的第一表面可以是边界窗格,而用于显示所选数据集和联合结果的第二表面可以是桌面上的一个位置。[0021]此外,各实施例不限于从数据库检索数据集。维护数据集的数据存储可以是存储数据集中的数据记录的任何实体。这样的数据存储可包括文件集合、数据服务、数据服务器等。一示例数据存储可以是可扩展标记语言(XML)文件的集合。其他示例可包括关系和面向对象的数据库服务。数据库的示例不以局限性的方式来提供,并且可包括其他实施例。
[0022]各实施例实现用于自动合成关系查询的数据驱动自然界面。数据驱动自然界面可将查询构造任务从用户移转到数据库。使得用户能够简单地选择和联合所期望的数据集而无需编写查询。除了传统数据库功能(诸如查询执行和数据集呈现)之外,数据库可处理查询构造。尽管贯穿本说明书和权利要求书作出对客户端应用和数据库的参考,各实施例不限于特定的客户端应用或数据库。应用本文所讨论的原理,可以使用任何应用和数据存储。
[0023]图1是示出了采用用于在客户端应用中自动合成和执行关系查询的数据驱动自然界面的系统的示例组件的图示。在图100中,服务器可主存数据库102,诸如向客户端提供信息服务的数据存储。一示例自然用户界面可向用户呈现数据库102中存储的数据集。数据库102可接收和执行请求,诸如检索数据集的查询。在一个示例实现中,可用SQL查询语言句法来提供查询。
[0024]一些实施例能够实现基于手势来联合数据集而无需编写查询。主存数据库102的服务器可存储数据集中的记录。客户端应用106可在一表面(用户界面)上显示数据集,诸如数据表。使得用户能够将数据集拖放到另一表面。当用户将另一数据集拖放到该另一表面时,客户端应用106可向数据库102请求已组合的数据集。该请求可以采用联合查询的形式。数据库102可基于请求的参数(诸如要联合的数据集)来构造联合查询。替换地,客户端应用106可构造查询并且将该查询作为对已组合的数据集的请求传送到数据库102。
[0025]网络104可以是局域网,或可以是诸如基于因特网的基础架构等外部实体。它可提供有线或无线连通性。客户端应用106和数据库102可通过不安全或安全的连通性彼此连接。安全连通性的一示例可以是通过采用加密通信在客户端与数据服务之间建立的虚拟专用网络(VPN)。
[0026]在一替换实施例中,数据库102可以是远程或本地数据库。本地数据库可限于本地计算资源,诸如CPU、存储器、以及对执行客户端应用的系统可用的存储资源。远程数据库在关于计算资源方面可以受限较少,并且利用非本地计算资源。然而,在利用远程数据库时,总的系统可能不得不为了网络等待时间而优化。替换地,客户端应用106可将数据库102作为客户端应用的组件来主存。各实施例不限于客户端/服务器以及对等体系结构。采用数据驱动自然界面在客户端应用中合成关系查询可以使用其他体系结构来完成。
[0027]图2示出了用于自动合成关系查询的数据驱动自然界面的示例动作图。应用210可在第一表面上显示从数据库230检索的数据集。第一表面可以是任何形状和形式。应用可以调整数据集的大小以符合可查看的第一表面。数据集可存储多条记录。每一条记录可被包含在数据行中。每一数据行可被进一步分隔成单个的数据单元格。数据单元格可属于被称为数据列的数据集实体。网格中的每一数据列可以代表数据集的属性。数据集在关系数据库中的公共属性是主键。主键是用于引用数据行的唯一号。关系数据库中的另一公共实体是外键。外键存储来自其他数据集的主键以创建该数据集与其他数据集之间的关系。
[0028]用户可通过使用应用210来发起图200中的操作。应用可以在第一表面上显示来自数据库230的数据集。第一表面可以通过分栏符与第二表面分开,或者这些表面可以位于用户桌面上的截然不同的位置。应用210可以检测第一用户动作,诸如将第一数据集从第一表面拖放到第二表面(212)。应用可以在完成第一用户动作时在第二表面上显示数据集的记录。
[0029]接着,应用210可以检测第二用户动作,诸如将第二数据集从第一表面拖放到第二表面(214)。在检测到第二用户动作时,应用210可向数据库230请求构造和执行查询以组合第一和第二数据集216。数据库230可执行该请求并且将已组合的数据集传送给应用210。应用210可显示已组合的数据集218,该已组合的数据集218盖写了第二表面上的第一数据集的初始显示。应用还可显示查询,并且使用户能够与该查询交互以更改已组合的数据集中所显示的记录。
[0030]用于合成关系查询的所述数据驱动自然界面只是出于说明目的。可以使用其他数据驱动自然界面来合成和执行关系查询。此外,数据库(例如,关系数据库、面向对象的数据库、电子表格应用、web服务、XML文件等)可由在计算设备本身上执行的应用来代替通信耦合的服务来存储。例如,在第二表面上组合来自第一表面的两个数据集的用户动作致使从本地存储的数据库检索已组合的数据集。
[0031]图3A到3C示出了根据一些实施例的提供用于自动合成和执行关系查询的数据驱动自然界面的示例。图3A显示了用于合成关系查询的具有两个表面的示例用户界面。第一表面310显示两个数据集,“产品”数据表312和“订单”数据表314。第二表面330通过分栏符320与第一表面310隔开。
[0032]第一表面310可被置于邻近于第二表面330。第一表面可被置于第二表面左侧。替换地,第一表面可被置于第二表面顶部,或者位于用户桌面上的不同位置。在其他实施例中,第一和第二表面的位置可由另一用户动作(诸如点击切换位置按钮或菜单中的切换选项)来切换。附加地,第一和第二表面的位置可由预定设备设置(诸如屏幕大小)来切换。移动设备上的屏幕大小限制可确定是否要向第二表面分配更多屏幕空间以使用户能够完成复杂的数据集联合操作。
[0033]图3B示出了第一用户动作。用户可以通过从第一数据表312中选择第一数据列来完成第一用户动作。用户可抓取并移动第一数据头部(334),诸如来自第一数据列的“名称”。在拖放完成时,应用可在第二表面上显示数据集332的内容。替换地,用户可通过抓取并移动与记录行相对应的主键来选择拖放该行。在又一示例中,用户可抓取并移动单个数据单元格。第一数据集的示例不限于数据列、行或单元格,而是可以是这些数据列、行或单元格中的每一个的单个或多个的组合。
[0034]附加地,在完成第一用户动作时,第二表面可实时地显示数据库执行的查询以检索第二表面上显示的第一数据集。该应用可允许用户更改查询并且实时地在第二表面上显示所得的数据集。
[0035]在图3C,该应用可检测到将第二数据集拖放到第二表面的第二用户动作。与第一用户动作类似,用户可拖放来自“订单”数据表的数据集(338)。该数据集可以是数据单元格、数据行、或数据列。第二用户动作可以抓取并移动第二数据列的第二数据头部(例如,“数量”)以将第二数据集从第一表面拖拽到第二表面。拖放动作可包括将所选数据集移动到已经在第一表面上的第一数据集旁边,或者简单地移动到第一表面上的任何位置。
[0036]在完成拖放动作338时,应用可请求已组合的数据集336。数据集可根据该请求的具体信息(可包括要组合的数据表和列名称)来生成和执行查询。数据库可执行一到多的联合类型查询,该查询在第二数据集中第一数据集的外键上将第一数据集与第二数据集进行联合。在一替换实施例中,第一和第二数据集的角色可颠倒,并且数据库可执行多到一的联合类型查询,该查询在第一数据集中的第二数据集的外键上将第一数据集与第二数据集进行联合。在又一实施例中,第一和第二数据集可以不具有彼此的外键。在这种场景中,数据库可尝试寻找一组中间表,通过该中间表可以创建从第一数据集到第二数据集的联合路径,并且如果找到该联合路径则使用该联合路径。如果没有找到这样的路径,数据库可执行多到多的联合类型查询,该查询通过为第一数据集的每一个元素与第二数据集的每一个元素创建矩阵来联合第一数据集与第二数据集。确定查询类型可取决于对数据集的选择以及各数据集如何彼此相关。用于已组合的数据集的查询可实时地与将数据集从第一表面拖放到第二表面的任何用户动作相关地显示在第二表面上。
[0037]各实施例不限于第一和第二用户动作。客户端应用可使用户能够通过将其他数据集从第一表面拖放到第二表面来完成附加用户动作以显示新的已组合的数据集。客户端应用可请求新的已组合的数据集和新的查询以在完成该附加用户动作时显示新的重新组合的数据集。
[0038]以上所讨论的场景是作为各示例实施例来提供的。可以使用其他场景来提供使用此处讨论的原理在客户端应用中自动地合成和执行关系查询的数据驱动自然界面。
[0039]图4是其中可以实现各实施例的示例联网环境。数据服务可经由在一个或多个服务器414或诸如托管服务的单个服务器(例如web服务器)416上执行的软件来提供。平台可以通过网络410来与诸如智能电话413、膝上型计算机412、或平板计算机411 (‘客户机设备’)等各个计算设备上的客户机应用进行通信。
[0040]如上所讨论的,客户端应用可实现用于合成关系查询的数据驱动自然界面。数据集可通过客户端设备411-413上的拖放用户动作来组合。已组合的数据集的查询可以联同已组合的数据集一起显示。用户可被允许更改查询以改变已组合的数据集。
[0041]如之前所讨论的,客户端设备411-413可实现对远程服务器(例如,服务器414中的一个)上执行的应用的访问。服务器可直接地或通过数据库服务器418来从数据存储419中取回或向数据存储419存储相关的数据。
[0042]网络410可包括服务器、客户端、因特网服务供应商以及通信介质的任何拓扑结构。根据各实施例的系统可以具有静态或动态拓扑结构。网络410可包括诸如企业网络等安全网络、诸如无线开放网络等非安全网络、或因特网。网络410还通过诸如公共交换电话网络(PSTN)或蜂窝网络等其他网络来协调通信。此外,网络410可包括诸如蓝牙或类似网络等短程无线网络。网络410提供此处描述的节点之间的通信。作为示例而非限制,网络410可以包括例如声学、RF、红外线和其它无线介质等无线介质。
[0043]可以采用计算设备、应用、数据源和数据分发系统的许多其它配置来实现用于合成和执行关系查询的数据驱动自然界面。此外,图4中所讨论的联网环境仅用于说明目的。各实施例不仅限于示例应用、模块或过程。
[0044]图5及相关联讨论旨在提供对其中可实现各实施例的合适计算环境的简要概括描述。参考图5,该图示出了诸如计算设备500之类的根据各实施例的应用的示例计算操作环境的框图。在基本配置中,计算设备500可包括至少一个处理单元502和系统存储器504。计算设备500还可以包括在执行程序时相互协作的多个处理单元。取决于计算设备的确切配置和类型,系统存储器504可以是易失性的(诸如RAM)、非易失性的(诸如ROM、闪存等)或是两者的某种组合。系统存储器504通常包括适于控制平台的操作的操作系统505,例如来自华盛顿州雷蒙德市的微软公司的WINDOWS?操作系统。系统存储器504还可以包括一个或多个软件应用,诸如程序模块506、用户界面模块522和数据界面模块524。
[0045]用户界面模块522可以是提供数据呈现、计算、分析的服务以及类似服务的一部分。数据界面模块524可以响应于用户选择并将数据集从用户界面模块522呈现的一个表面移动到另一表面来与数据库交互以检索数据集。管理这两个模块的应用可组合数据集并且显示产生已组合的数据集的查询。该基本配置在图5中由虚线508内的那些组件示出。
[0046]计算设备500可以具有附加特征或功能。例如,计算设备500还可包括附加数据存储设备(可移动和/或不可移动),诸如,例如磁盘、光盘或磁带。在图5中通过可移动存储509和不可移动存储510示出这样的附加存储。计算机可读存储介质可以包括以用于存储诸如计算机可读指令、数据结构、程序模块或其它数据等信息的任何方法或技术实现的易失性和非易失性、可移动和不可移动介质。计算机可读存储介质是非瞬态的计算机可读存储器设备。系统存储器504、可移动存储509和不可移动存储510都是计算机可读存储介质的示例。计算机可读存储介质包括但不限于,RAM、R0M、EEPR0M、闪存或其它存储器技术,CD-ROM、数字多功能盘(DVD)或其它光学存储,磁带盒、磁带、磁盘存储或其它磁存储设备,或能用于存储所需信息且能够由计算设备500访问的任何其它介质。任何这样的计算机可读存储介质都可以是计算设备500的一部分。计算设备500也可具有输入设备512,诸如键盘、鼠标、笔、语音输入设备、触摸输入设备和类似输入设备。还可以包括输出设备514,诸如显示器、扬声器、打印机和其它类型的输出设备。这些设备在本领域中公知且无需在此处详细讨论。
[0047]计算设备500还可以包含允许该设备与其他设备518通信的通信连接516,诸如通过分布式计算环境中的无线网络、卫星链路、蜂窝链路和类似机制。其他设备518可包括执行通信应用的计算机设备、存储服务器和类似设备。一个或多个通信连接516是通信介质的一个示例。通信介质可以包括计算机可读指令、数据结构、程序模块、或者诸如载波或其它传输机制等的已调制数据信号中的其它数据,并且包括任何信息传递介质。术语“已调制数据信号”指其一个或多个特征以这样的方式设置或改变以便在信号中对信息进行编码的信号。作为示例而非限制,通信介质包括诸如有线网络或直接线连接之类的有线介质,以及诸如声学、RF、红外及其他无线介质之类的无线介质。
[0048]各示例实施例还包括各种方法。这些方法可以用任何数量的方式,包括本文中所描述的结构来实现。一种此类方式是通过本文中描述的类型的设备的机器操作。
[0049]另一可任选方式是结合一个或多个人类操作者执行该方法的各个操作中的某一些来执行该方法的各个操作中的一个或多个操作。这些人类操作者无需彼此同在一处,而是其每一个可以仅与执行程序的一部分的机器同在一处。
[0050]图6示出了根据各实施例的采用用于自动合成关系查询的数据驱动自然界面的过程的逻辑流程图。过程600可由任何计算设备上本地安装的或主存的应用来实现。
[0051]过程600可开始于操作610,其中检测到将第一数据集从第一表面移动到第二表面的第一用户动作。操作610之后可以是在操作620处在第二表面上显示第一数据集。在操作630,该应用随后可以检测到将另一数据集从第一表面移动到第二表面的第二用户动作(例如,拖放来自数据表的数据列)。
[0052]在操作640,该应用可计算被移动的数据集之间的联合路径或者请求数据库以确定联合路径。操作640之后可以是操作650,其中执行联合操作。在操作660,可以在第二表面上显示联合操作(查询执行)的结果。如果用户将附加的数据集移动到第二表面,则可执行附加的联合操作(即,形成并执行查询),并且在无需来自用户的手动干预的情况下显示它们的结果,如操作660与630之间的循环所示的。
[0053]某些实施例可在包括通信模块、存储器和处理器的计算设备中实现,其中处理器结合存储在存储器中的指令执行如上所述的方法或类似方法。其它实施例可被实现为其上存储有用于执行如上所述的方法或类似方法的指令的计算机可读存储介质。
[0054]过程600中包括的操作只是为了说明。根据各实施例的用于在客户端应用中合成关系查询的数据驱动自然界面可以使用此处所述的各原理通过具有更少或更多步骤的相似过程、以及不同的操作次序来实现。
[0055]以上说明书、示例和数据提供了对各实施例的组成的制造和使用的全面描述。尽管用结构特征和/或方法动作专用的语言描述了本主题,但可以理解,所附权利要求书中定义的主题不必限于上述具体特征或动作。相反,上述具体特征和动作是作为实现权利要求和各实施方式的示例形式而公开的。
【权利要求】
1.一种至少部分地由计算设备执行的用于提供用于自动合成关系查询的数据驱动自然界面的方法,所述方法包括: 在第一表面上显不多个数据集; 检测与来自所述第一表面上的所述多个数据集的第一数据集相关联的第一用户动作; 检测与来自所述第一表面上的所述多个数据集的第二数据集相关联的第二用户动作; 构造用于组合所述第一和第二数据集的查询; 执行所述查询;以及 在第二表面上显示所述第一和第二数据集以及所述查询的结果。
2.如权利要求1所述的方法,其特征在于,还包括: 检测与来自所述第一表面上的所述多个数据集的另一数据集相关联的另一用户动作; 构造用于将所述另一 数据集与现有查询结果进行组合的新查询; 执行所述新查询;以及 在用户不必手动测试和执行所述查询的情况下显示所述新查询的结果。
3.如权利要求1所述的方法,其特征在于,所述第一和第二用户动作包括选择相应的数据集并且将其移动到所述第二表面。
4.如权利要求3所述的方法,其特征在于,选择一数据集并且将其移动到所述第二表面包括:使用户能够抓取数据列头部并且将其拖拽到所述第二表面。
5.如权利要求3所述的方法,其特征在于,选择一数据集并且将其移动到所述第二表面包括:使用户能够抓取多个数据单元格并且将其拖拽到所述第二表面。
6.如权利要求1所述的方法,其特征在于,构造所述查询包括计算所述第一和第二数据集之间的联合路径。
7.如权利要求1所述的方法,其特征在于,还包括: 在所述第一表面上以具有列头部的网格的形式显示所述多个数据集。
8.—种能够提供用于自动合成关系查询的数据驱动自然界面的计算设备,所述计算设备包括: 存储器; 耦合至所述存储器的处理器,所述处理器结合所述存储器中存储的指令来执行一应用,其中所述应用被配置成: 在第一表面上显不多个数据集; 检测将来自所述多个数据集的第一数据集从所述第一表面移动到第二表面的第一用户动作; 检测将来自所述多个数据集的第二数据集从所述第一表面移动到所述第二表面的第二用户动作; 致使数据存储构造用于组合所述第一和第二数据集的查询; 致使所述数据存储执行所述查询; 从所述数据存储接收所述查询的结果;以及在所述第二表面上显示所述第一和第二数据集以及所述查询的结果。
9.如权利要求8所述的计算设备,其特征在于,所述查询是以下各项之一: 一到多的联合查询,所述查询在所述第二数据集中的所述第一数据集的外键上将所述第一数据集与所述第二数据集进行联合; 多到一的联合查询,所述查询在所述第一数据集中的所述第二数据集的外键上将所述第一数据集与所述第二数据集进行联合;以及 多到多的联合查询,所述查询通过为所述第一数据集的每一个元素与所述第二数据集的每一个元素创建矩阵来将所述第一数据集与所述第二数据集进行联合。
10.一种其上存储有用于提供用于自动合成关系查询的数据驱动自然界面的指令的计算机可读存储器设备,所述指令包括: 在第一表面上用具有列头部的网格形式来显示多个数据集; 检测将来自所述多个数据集的第一数据集从所述第一表面移动到第二表面的第一用户动作; 检测将来自所述多个数据集的第二数据集从所述第一表面移动到所述第二表面的第二用户动作; 致使数据存储构造用于在所述第一和第二数据集之间执行联合操作的查询; 致使所述数据存储执行所述查询; 从所述数据存储接收所述查询的结果;以及 在所述第二表面上显示所述第一和第二数据集以及所述查询的结果。
【文档编号】G06F17/30GK103620603SQ201280031926
【公开日】2014年3月5日 申请日期:2012年5月28日 优先权日:2011年6月29日
【发明者】J·麦克弗森, R·刘易斯 申请人:微软公司
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1