在 OpenOffice.org Base 中创建查询

作者:Bruce Byfield

查询是数据库中与电子表格中过滤器等效的功能。正如过滤器可以限制和重新组织电子表格中显示的信息一样,查询也可以限制和重新组织数据库中的信息。两者都可以是查找所需信息的有效方法,尤其是在处理数千条记录时。当然,在专家手中,查询可以比过滤器更精确——也更复杂——但是,如果您正在使用 OpenOffice.org Base,那么这种类比通常是成立的,尽管查询的设置比过滤器稍微复杂一些。当在 Base 中保存以供长期使用时,查询将变为视图。

您可以在 Base 中设置的任何数据库中创建查询。实际上,Base 为您提供了三种不同的编写查询的方法:向导,它会引导您完成整个过程;设计视图,它提供最少的指导;以及 SQL 视图,它根本不提供任何指导。如果您是数据库专家,您可能更喜欢设计视图或 SQL 视图。然而,就像 Calc 中的函数向导或 Impress 中的入门向导一样,Base 的查询向导的优势在于它可以帮助您组织思路,同时不需要任何先前的知识。对于大多数人或目的而言,没有理由不使用向导。

创建查询

要创建查询,请打开一个数据库,然后在左侧窗格中单击“查询”。查询页面的组织方式与 Base 中的其他页面类似,顶部中间列出了可用任务,底部中间列出了现有项目。

请注意,由于某些原因,Base 每次只允许列出一个查询。如果已存在一个查询,则会在“查询”窗格中突出显示它,并且任何新查询都将是现有查询的子查询。如果这不是您想要的,请右键单击现有查询,然后从上下文菜单中选择“创建为视图”以重命名现有查询并将其移动到“表”页面。只有当“查询”窗格为空时,您才应单击“任务”窗格中的“使用向导创建查询”,然后打开查询向导。

创建查询的第一步是选择您要显示在查询中的字段。请注意,这些不仅是您将用于过滤信息的字段,还是您在使用查询时看到的所有字段。毕竟,如果您在地址列表中搜索加拿大的所有地址,您不希望只在查询中显示“国家或地区”,因为那只会给您一个显示“加拿大”的记录列表——很可能,您至少想要地址中的姓名,可能还有街道、城市等。与 Base 的其他部分一样,您可以使用左右箭头按钮将可用字段移动到您要使用的字段,并使用向上和向下按钮按顺序排列它们。

Field selection

下一步是对查询结果的显示顺序进行排序。您可能会注意到,向导的此页面几乎与 Calc 和 OpenOffice.org 的其他部分中找到的排序对话框相同,允许您选择最多四个字段进行排序。例如,如果您在地址数据库中搜索加拿大结果,您可能希望按姓氏,然后再按名字对查询结果进行排序。

Sorting order

在向导的第三页中,您实际上设置了查询。同样,该对话框对您来说应该很熟悉——如果不是来自 OpenOffice.org,那么也是来自 Evolution 或 KMail 等程序中的电子邮件搜索。您可以定义最多三个条件,设置字段、条件和值。对于加拿大地址查询,条件将很简单:您将选择“国家或地区”字段,并指定它应等于“加拿大”。由于您只有一个条件,您甚至不需要记住将条件设置为“匹配以下任何一个”,就像您在更复杂的查询中可能做的那样。

Search conditions

在“详细信息或摘要”页面上,您可以选择“详细查询”,其中显示所有与查询匹配的记录,或者选择“摘要查询”,其中仅显示总和、平均值、最小值或最大值。对于大多数用途,您可能需要“详细查询”,特别是当数据库中的信息是非数字的时,就像地址簿搜索一样。

Detail summary

此时,Base 会跳过其标准向导中的两个步骤,因为它们与查询无关,并跳转到“别名”。此页面的目的是使字段以人类可读的形式显示,添加诸如单词之间空格和其他语法上的细微之处。它类似于报表向导中称为“标记字段”的页面。

Queries aliases

最后,您将获得对您的选择的概述。花点时间查看您所做的事情,使用“后退”按钮进行任何更改。一旦创建了查询,进行更改的唯一方法是通过“设计视图”,它可以教您如何使用视图,但仍然远不如向导用户友好。您还可以在此处选择立即查看新查询,或者在“设计视图”中打开它以添加超出向导能力范围的更高级的润色。

概述 使用查询

为了创建其他查询,您应该将任何查询更改为视图,或者在完成查询后将其删除。无论采用哪种形式,您都可以在窗口的最右侧通过选择“文档”来查看它。或者,如果您愿意,可以双击它以在单独窗口中的“表数据”视图中查看查询。要将查询打印为报表,请右键单击并从上下文菜单中选择“报表向导”。

在其他数据库中,查询可能会变得更加复杂,尤其是在您使用函数时。但是,在 Base 中,它们非常简单,任何人都可以使用它们。如果您在使用 Base 中的查询后继续使用另一个数据库(如 PostgrSQL 或 MySQL),您应该对期望有所了解。同时,如果您选择不再深入,您将拥有一个可以快速自定义的有用工具。

加载 Disqus 评论