我有字串沒有按數字排序的問題。例如。10< 8 而不是 8 <10 我目前無法將字串轉換為整數,因為字串的其他部分是文字字串。
如果數字小于 10,我想附加一個前導 0 。如何在不使用腳本的情況下實作這一點?
uj5u.com熱心網友回復:
我會建議將以下查詢與具有腳本的排序一起使用。與將前導 0 附加到值相比,這將最有效。
您可以替換ID.keyword為您的欄位名稱。
{
"query": {
"match_all": {}
},
"sort": {
"_script": {
"type": "Number",
"order": "desc",
"script": {
"lang": "painless",
"source": "Long.parseLong(doc['ID.keyword'].value)"
}
}
}
}
如果你有整數值,那么你也可以使用Integer.parseInt(doc['ID.keyword'].value)。
轉載請註明出處,本文鏈接:https://www.uj5u.com/ruanti/530385.html
上一篇:如何使用elasticsearch啟動quarkus原生應用程式?
下一篇:如何防止Nest聚合的前綴
