sql >> Database >  >> RDS >> SQLite

SQLite verwijderen

Samenvatting :deze tutorial laat je zien hoe je SQLite DELETE gebruikt statement om rijen uit een tabel te verwijderen.

Inleiding tot SQLite DELETE verklaring

U hebt geleerd hoe u een nieuwe rij in een tabel kunt invoegen en bestaande gegevens van een tabel kunt bijwerken. Soms moet u rijen uit een tabel verwijderen. In dit geval gebruikt u SQLite DELETE verklaring.

De SQLite DELETE Met de instructie kunt u één rij, meerdere rijen en alle rijen in een tabel verwijderen. De syntaxis van de SQLite DELETE verklaring is als volgt:

DELETE FROM table
WHERE search_condition;Code language: SQL (Structured Query Language) (sql)

In deze syntaxis:

  • Geef eerst de naam op van de tabel waarvan u de rijen wilt verwijderen na de DELETE FROM trefwoorden.
  • Ten tweede, voeg een zoekvoorwaarde toe in de WHERE clausule om de rijen te identificeren die moeten worden verwijderd. De WHERE clausule is een optioneel onderdeel van de DELETE uitspraak. Als u de WHERE . weglaat clausule, de DELETE statement verwijdert alle rijen in de tabel.

SQLite biedt ook een uitbreiding op de DELETE statement door ORDER BY . toe te voegen en LIMIT clausules. Als u SQLite compileert met de SQLITE_ENABLE_UPDATE_DELETE_LIMIT compile-time optie, kunt u de ORDER BY gebruiken en LIMIT clausule in de DELETE verklaring zoals de volgende vorm:

DELETE FROM table
WHERE search_condition
ORDER BY criteria
LIMIT row_count OFFSET offset;Code language: SQL (Structured Query Language) (sql)

De ORDER BY clausule sorteert de rijen gefilterd door de voorgaande search_condition in de WHERE clausule en de LIMIT clausule specificeert het aantal rijen dat moet worden verwijderd.

Merk op dat wanneer u de DELETE statement zonder een WHERE clausule op een tabel die geen triggers heeft. SQLite verwijdert alle rijen in één keer in plaats van elke afzonderlijke rij te bezoeken en te verwijderen. Deze functie staat bekend als truncate-optimalisatie.

SQLite DELETE voorbeelden van uitspraken

We gebruiken de artists_backup tabel gemaakt in de handleiding voor het invoegen van rijen in tabellen.

Als je die tutorial niet hebt gevolgd, kun je de artists_backup . maken tabel en voeg er gegevens in met behulp van het volgende script:

-- create artists backup table
CREATE TABLE artists_backup(
   artistid INTEGER PRIMARY KEY AUTOINCREMENT,
   name NVARCHAR
);
-- populate data from the artists table
INSERT INTO artists_backup 
SELECT artistid,name
FROM artists;Code language: SQL (Structured Query Language) (sql)

De volgende instructie retourneert alle rijen van de artists_backup tafel:

SELECT
	artistid,
	name
FROM
	artists_backup;Code language: SQL (Structured Query Language) (sql)

Probeer het

We hebben 280 rijen in de artists_backup tafel.

Om een ​​artiest met id 1 te verwijderen, gebruik je de volgende instructie:

DELETE FROM artists_backup
WHERE artistid = 1;Code language: SQL (Structured Query Language) (sql)

Probeer het

Omdat we artistid . gebruiken om de artiest te identificeren, verwijderde de verklaring precies 1 rij.

Stel dat je artiesten wilt verwijderen wiens naam het woord Santana . bevat :

DELETE FROM artists_backup
WHERE name LIKE '%Santana%';Code language: SQL (Structured Query Language) (sql)

Probeer het

Er zijn 9 rijen waarvan de waarden in de name kolom bevat het woord Santana daarom zijn deze 9 rijen verwijderd.

Om alle rijen in de artists_backup te verwijderen tabel, hoeft u alleen de WHERE . weg te laten clausule als de volgende verklaring:

DELETE FROM artists_backup;Code language: SQL (Structured Query Language) (sql)

Probeer het

In deze tutorial heb je geleerd hoe je SQLite DELETE gebruikt statement om rijen in een tabel te verwijderen.


  1. Niet gelijk aan <> !=operator op NULL

  2. Wat is het LEN()-equivalent in MySQL?

  3. Hoe de huidige taal in SQL Server (T-SQL) in te stellen

  4. Een nieuwe waarde toevoegen aan een bestaand ENUM-type