如何在动态生成查询时找出要分组的列?

时间:2015-12-11 07:52:33

标签: postgresql postgresql-8.4

我需要实现一个用户将动态生成报告的功能。 在该功能中,将向用户呈现用于选择一些特定模块的界面。每个模块将在内部指向一组表。

考虑以下表格,

**Table Name : module_location**
location_id
location_name ->Contains a location name

**Table Name : module_streets**
street_id
street_location_id (F.K module_location.location_id)
street_name ->Contains street name in a location

如果用户选择模块名称Location,他确实选择了要查询的列表表(这是在内部完成的) 在这种情况下,module_locationmodule_streets(它们将通过位置ID加入)。 选择Location模块后,用户必须选择生成后需要在动态报告中显示的字段集。 因此,他将获得一个选择这些字段的界面。界面中给出的名称将是表中各个字段的别名 即,

将向用户显示选择以下内容的选项

Location Name -> Corresponds to the field 'location_name'
Street Name -> Corresponds to the field 'street_name'

选择要显示的必填字段后,用户必须选择一些条件,如(计数,总和等) 假设条件类似于Get the number of streets in a location,则用户必须针对选项count添加条件Street Name

选择条件后,用户只需单击提交按钮即可生成报告。

我在这里遇到的问题是如何确定要分组的列。如果这是手动完成的,我知道我需要对location_id进行分组才能获得计数。那么,如果动态生成查询,我怎么能这样做呢?

请帮助。我正在使用的数据库是postgresql8.4

0 个答案:

没有答案