Rispondendo al mio telefono non è possibile formattare correttamente la risposta.
Questa potrebbe essere una risposta tardiva, ma la applico qui solo nel caso in cui qualcuno abbia ancora bisogno di quella funzionalità.
Risposta breve
ltrim mylist 0 - (n + 1) dove mylist è la chiave e n è la lunghezza della myList.
Risposta lunga
modo in cui funziona è che LTRIM, ci vogliono due indici e restituire gli elementi che rientrano tra loro comprensivo degli indici.
lista Ltrim startIndex endIndex
Esempio supponendo che abbiamo una lista redis con mylist chiave contenente 10 voci:
ltrim mylist 0 5 taglierà la lista di elementi a partire dall'indice 0 a all'indice 5. E scarta quelli che non rientrano in questo raggio.
Fortunatamente le operazioni di lista redis supportano l'indicizzazione negativa che si rivela estremamente utile in alcune situazioni. In genere quando non si conosce la lunghezza della lista.
-1 si riferisce all'ultimo elemento, - 2 penultimo elemento, ecc. E (-n) è il primo elemento.
Gli indici fuori intervallo non sono dannosi. Se l'indice finale è maggiore della lunghezza dell'elenco, redis lo considera uguale all'ultimo indice.
Ecco perché ltrim mylist 0, - (n +1) cancella l'elenco. Lo fa perché (-n) è equivalente all'indice 0. L'aggiunta di 1 ad esso non lascia alcun elemento all'interno di quell'intervallo poiché ciò sarà prima del primo elemento.
fonte
2017-07-27 12:14:26
@DavidJames: consideralo un altro modo di pronunciare "foo". Sto seguendo la convenzione utilizzata nella documentazione di Redis: http://redis.io/commands/ –
Sì, in redis, tutte le strutture dati sono chiavi. Ciò non significa che "chiave" sia utile in un esempio. Al contrario, penso. L'uso di 'mylist' renderebbe più chiara la tua domanda. Ad esempio, http://redis.io/commands/ltrim/ scrive: 'LTRIM mylist 1 -1'. La pagina che citi è un comando * riferimento * e non dovrebbe essere considerata una "convenzione" per fare buoni esempi. –