我正在使用语义媒体维基在这样的子对象中存储不同的日记,即与工作有关的日记,私人物品等:
{{#subobject:
|Has date = 2020-04-08
|Has log = work-log
|has agenda =
* Work related task done
}}
{{#subobject:
|Has date = 2020-04-08
|Has log = private-log
|has agenda =
* Something very interesting happened today
}}
{{#subobject:
|Has date = 2020-04-07
|Has log = private-log
|has agenda =
* Today nothing happened
}}
所有这些信息都可以通过这样的#ask查询来查询,汇总来自所有日志类型的所有条目:
{{#ask:
[[Has log::+]]
|?Has date =Date
|?Has agenda =Agenda
|format=broadtable
|sort=Has date
|order=desc
|mainlabel=-
}}
当这样做时,在结果表中,每个条目只有一行,因此,针对同一天发生的活动分别设置了条目,如下所示:
Date Agenda
--------------------------------------------------------
2020-04-08 * Work related task done
--------------------------------------------------------
2020-04-08 * Something very interesting happened today
--------------------------------------------------------
2020-04-07 * Today nothing happened
是否有可能按照输出中的日期对这些结果进行分组,类似于SQL GROUP BY语句,这样我将得到类似的内容?:
Date Agenda
--------------------------------------------------------
2020-04-08 * Work related task done
* Something very interesting happened today
--------------------------------------------------------
2020-04-07 * Today nothing happened
谢谢!
在SMW中不可能使用group by子句,但是通过使用模板格式的结果,您可以获得想要获得的外观。