DELETE FROM table [ WHERE condition ]
DELETE borra las filas que satisfacen la clausula WHERE de la tabla especificada.
Si la condicion (clusula WHERE) esta ausente, el efecto es borrar todas las filas de la tabla. El resultado es una tabla valida, pero vacia.
Sugerencia: TRUNCATE es una extensión de Postgres el cual provee un mecanismo más rápido para borrar todas las filas de una tabla.
Para modificar la tabla usted debe poseer acceso de escritura a la misma, asi como acceso de lectura a cualquier tabla cuyos valores son leidos en la condicion.
Borra todos los films excepto los musicales:
DELETE FROM films WHERE kind <> 'Musical'; SELECT * FROM films; code |title |did| date_prod|kind |len -----+-------------------------+---+----------+----------+------ UA501|West Side Story |105|1961-01-03|Musical | 02:32 TC901|The King and I |109|1956-08-11|Musical | 02:13 WD101|Bed Knobs and Broomsticks|111| |Musical | 01:57 (3 rows)
Borra completamente la tabla films:
DELETE FROM films; SELECT * FROM films; code|title|did|date_prod|kind|len ----+-----+---+---------+----+--- (0 rows)