В моем ядре solr у меня есть поле ID , которое является первичным ключом. Я определил это так:
<field name="ID" type="string" indexed="true" stored="true" required="true" multiValued="false" />
Я индексирую свои записи с помощью командной строки. После этого я хочу получить последний ID . Мой запрос как этот
http://localhost:8983/solr/StorageCore/select?fl=ID&q=*%3A*&sort=ID%20desc
Это дает мне этот результат
{
"responseHeader":{
"status":0,
"QTime":0,
"params":{
"q":"*:*",
"fl":"ID",
"sort":"ID desc"}},
"response":{"numFound":909,"start":0,"docs":[
{
"ID":"99"},
{
"ID":"98"},
{
"ID":"97"},
{
"ID":"96"},
{
"ID":"95"},
{
"ID":"94"},
{
"ID":"93"},
{
"ID":"92"},
{
"ID":"911"},
{
"ID":"910"}]
}
Так что результат не тот, который я хочу. Я хочу получить 911 , а не 99 . Как я могу решить эту проблему?
ОБНОВЛЕНИЕ
После того, как @MatsLindh и @ Abhijit Bashetti помогают, я создал новое поле, тип которого int после этого я скопировал все свое поле uniqueKey, которое является ID , в новое поле. Так это сработало. Мой ответ на запрос, как это сейчас
{
"responseHeader":{
"status":0,
"QTime":2,
"params":{
"q":"idCopy:*",
"fl":"idCopy",
"sort":"idCopy desc",
"rows":"9999"}},
"response":{"numFound":909,"start":0,"docs":[
{
"idCopy":[911]},
{
"idCopy":[910]},
{
"idCopy":[909]},
{
"idCopy":[908]},
{
"idCopy":[907]},
{
"idCopy":[906]},
{
"idCopy":[905]},
{
"idCopy":[904]},
{
"idCopy":[903]},
{
"idCopy":[902]},
{
"idCopy":[901]},
{
"idCopy":[900]},