我的财产名为mobileWarrantyYear。
现在,我想获取所有保修期最长的手机。
例如,如果我的移动m1的保修期为1Y,移动m2和移动的m3保修期为3Y,那么我想退回移动m2和m3。
这是我到目前为止尝试过的方法,但是它在过滤器子句中给了我语法错误。
如何实现此逻辑?
PREFIX ns: <http://www.semanticweb.org/cs/ontologies/2019/2/untitled-ontology-2#>
Select * where
{
?s ns:mobileWarrantyYear ?o
FILTER(?o = (SELECT * WHERE { ?s ns:mobileWarrantyYear ?o } ORDER BY DESC(?o) LIMIT 1)
}
基本上,我尝试将最高保修年的移动设备与所有移动保修年进行匹配,以查看是否还有更多具有相同最高保修期的移动设备。
很抱歉尝试失败,但这是我经过数小时的奋斗才想到的。
任何更好的主意将不胜感激!