Ao usar o comando Post­greSQL DELETE, é possível remover dados de uma tabela. Ele também pode ser refinado com condições para es­pe­ci­fi­car a exclusão de linhas in­di­vi­du­ais. Como as exclusões no Post­greSQL são ir­re­ver­sí­veis, é im­por­tante ter cuidado ao usar esse comando.

O que é o comando Post­greSQL DELETE?

O comando DELETE do Post­greSQL é usado para excluir entradas de uma tabela. Com a cláusula WHERE, o usuário es­pe­ci­fica as linhas que deseja excluir. Sem a inclusão dessa cláusula, todos os dados da tabela serão removidos per­ma­nen­te­mente. Por esse motivo, use o comando com cautela.

Dedicated Servers
Per­for­mance through in­no­va­tion

O encontro do hardware com a nuvem: servidor dedicado com nuvem integrada e cobrança por minuto, incluindo as­sis­tente pessoal!

  • Dedicated en­ter­prise hardware
  • Con­fi­gu­ra­ble hardware equipment
  • ISO-certified data centers

Qual é a sintaxe do comando Post­greSQL DELETE?

A sintaxe básica do comando Post­greSQL DELETE é a seguinte:

DELETE FROM nome_tabela
WHERE [condição];
post­gresql

O comando DELETE FROM inicia a exclusão das linhas da tabela definida. A cláusula WHERE permite es­pe­ci­fi­car quais linhas devem ser removidas. Para im­ple­men­tar múltiplas condições, use AND ou OR.

Nota

Antes de excluir os dados que deseja, cer­ti­fi­que-se de ter um backup atu­a­li­zado do seu banco de dados. Você também pode realizar a operação de exclusão dentro de uma transação. Isso ajudará a prevenir po­ten­ci­ais perdas aci­den­tais de dados, caso o comando seja executado in­cor­re­ta­mente.

Como excluir os dados de uma tabela com Post­greSQL DELETE

Para en­ten­der­mos como o comando Post­greSQL DELETE funciona, vamos analisar um exemplo prático. Primeiro, usaremos o comando Post­greSQL CREATE TABLE para criar uma tabela chamada “lista_clientes”. Em seguida, vamos preenchê-la usando Post­greSQL INSERT INTO. A tabela possui três colunas (id, nome e cidade) e contém quatro linhas de dados:

|id|nome|cidade|
|-|-|-|
|1|Helena|Campinas|
|2|Silvana|Santos|
|3|Marcela|Guarulhos|
|4|Helena|Osasco|
post­gresql

Ao usar o comando Post­greSQL DELETE sem adicionar uma condição, todos os dados da tabela serão excluídos. A estrutura da tabela em si, no entanto, não será removida. A sintaxe do comando é a seguinte:

DELETE FROM lista_clientes;
post­gresql

Como excluir uma linha no Post­greSQL com DELETE

Em muitos casos, é ne­ces­sá­rio excluir somente uma linha. Para fazer isso, é preciso incluir a cláusula WHERE. Por exemplo, imagine que você queira remover a Silvana (id número 2) da lista. Nesse caso, use o seguinte código:

DELETE FROM lista_clientes
WHERE id = 2;
post­gresql

Como es­pe­ci­fi­car uma linha usando múltiplas condições

Se você estiver tra­ba­lhando com tabelas grandes, existe a pos­si­bi­li­dade de que algumas entradas sejam du­pli­ca­das. Para garantir que apenas uma linha será excluída, use múltiplas condições com o comando Post­greSQL DELETE. Na tabela anterior, duas clientes se chamavam Helena, mas queremos excluir apenas a segunda entrada. Para fazer isso, combine duas condições:

DELETE FROM lista_clientes
WHERE nome = 'Helena'
AND id >= 3;
post­gresql

O comando excluirá todas as linhas com o nome Helena cujo id é maior ou igual a 3. Como a primeira entrada contendo Helena tem um id inferior a 3, ela per­ma­ne­cerá no banco de dados após a execução do comando de remoção.

Ir para o menu principal