我正在使用维基数据查询服务来获取某些地方的人口日期。输出给出以下格式的原始结果2010-01-01T00:00:00Z
(举个例子)。我还检索了每个日期的日期精度。这query https://query.wikidata.org/#SELECT%20DISTINCT%0A%20%20%3Fplace%0A%20%20%3FplaceLabel%0A%20%20%3Fpopulation%0A%20%20%3FpopulationDate%0A%20%20%3FpopulationDatePrecision%0A%0AWHERE%20%7B%0A%20%20%3Fplace%20p%3AP31%20%3FinstanceOf.%0A%20%20%3FinstanceOf%20ps%3AP31%2Fwdt%3A279%2A%20wd%3AQ134390.%0A%20%20%0A%20%20OPTIONAL%20%7B%0A%20%20%20%20%3Fplace%20p%3AP1082%20%3Fpop_statement%20.%0A%20%20%20%20%3Fpop_statement%20ps%3AP1082%20%3Fpopulation%3B%0A%20%20%20%20%20%20pqv%3AP585%20%5B%0A%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20wikibase%3AtimePrecision%20%3FpopulationDatePrecision%3B%0A%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20wikibase%3AtimeValue%20%3FpopulationDate%20%5D.%0A%20%20%7D%0A%20%20%0A%20%20minus%20%7B%20%3FinstanceOf%20pq%3AP582%20%3FendTime.%20%7D%0A%20%20%0A%20%20service%20wikibase%3Alabel%20%7B%20bd%3AserviceParam%20wikibase%3Alanguage%20%22en%22.%20%7D%0A%7D%20ORDER%20BY%20%3FplaceLabel%0A结果显示日期1 January 2010
格式,但下载 csv 或 tsv 文件后,日期仍以原始格式显示2010-01-01T00:00:00Z
.
我想根据日期精度显示以下日期:
if(日期精度=11
), 展示1 January 2010
if(日期精度=10
), 展示January 2010
if(日期精度=9
), 展示2010
否则,只显示原始日期
我该如何做到这一点,以及如何强制下载的 csv 或 tsv 文件显示格式化日期?
SELECT DISTINCT
?place
?placeLabel
?population
?populationDate
?populationDatePrecision
WHERE {
?place p:P31 ?instanceOf.
?instanceOf ps:P31/wdt:279* wd:Q134390.
OPTIONAL {
?place p:P1082 ?pop_statement .
?pop_statement ps:P1082 ?population;
pqv:P585 [
wikibase:timePrecision ?populationDatePrecision;
wikibase:timeValue ?populationDate ].
}
minus { ?instanceOf pq:P582 ?endTime. }
service wikibase:label { bd:serviceParam wikibase:language "en". }
} ORDER BY ?placeLabel
None
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)