sql >> Databasteknik >  >> RDS >> SQLite

Android sqlite, begränsa antalet rader i databasen

En fråga som denna kommer att visa alla uppgifter, senaste först:

SELECT *
FROM MyTable
ORDER BY Date DESC    -- or some autoincrementing ID column

Med en OFFSET-klausul kan du hoppa över de första posterna. Det betyder att du får alla poster utom de första 100, dvs. du får de poster som bör raderas:

SELECT *
FROM MyTable
ORDER BY Date DESC
LIMIT -1 OFFSET 100

Du kan sedan använda detta i en underfråga för att faktiskt ta bort posterna:

DELETE FROM MyTable
WHERE ID IN (SELECT ID
             FROM MyTable
             ORDER BY Date DESC
             LIMIT -1 OFFSET 100)



  1. Halloweenproblemet – del 3

  2. Vad är MySQL-radordning för SELECT * FROM table_name;?

  3. MySQL beviljar privilegier till användare för databas

  4. Gör, inte bryta, SQL Server-prestanda