Database
 sql >> Base de Dados >  >> RDS >> Database

Como excluir uma linha no SQL

Problema:


Você deseja remover uma linha/linhas de uma tabela.

Exemplo 1:


No exam tabela, há nomes dos alunos e os resultados do exame.
nome resultado
Janet Morgen 9
Taya Bain 11
Anne Johnson 11
Josh Kaur 10
Ellen Thornton 8

Você deseja remover a linha de Ellen Thornton.

Solução 1:

DELETE FROM exam
WHERE name = 'Ellen Thornton';

A tabela exam agora fica assim:
nome resultado
Janet Morgen 9
Taya Bain 11
Anne Johnson 11
Josh Kaur 10

Discussão:


Use DELETE FROM com o nome da tabela da qual você deseja excluir uma linha. Em WHERE , escreva a condição especificando a linha. Se você tiver uma linha específica em mente, é melhor escrever a condição usando a coluna que contém valores exclusivos. Aqui, a coluna exclusiva é name .

Se houver muitas linhas cujo nome seja igual a 'Ellen Thornton ', todos eles serão removidos. Se não houver tal nome, nenhuma linha será removida.

Exemplo 2:


No exam tabela, há nomes dos alunos e os resultados do exame, assim como no exemplo anterior.
nome resultado
Janet Morgen 9
Taya Bain 11
Anne Johnson 11
Josh Kaur 10
Ellen Thornton 8

Você deseja remover todas as linhas para as quais o result é maior que 10 .

Solução 2:

DELETE FROM exam
WHERE result > 10;

O exam tabela agora fica assim:
nome resultado
Janet Morgen 9
Josh Kaur 10
Ellen Thornton 8

Discussão:


Às vezes, você não sabe as linhas exatas que precisa remover ou mesmo quantas linhas precisa remover. Você pode escrever a condição para a qual as linhas devem ser removidas. Pode haver muitas linhas que atendem à condição, pode ser apenas uma linha ou nenhuma linha.

Claro, você pode escrever várias condições em WHERE , juntando-os com AND ou OR , por exemplo:
DELETE FROM exam
WHERE result > 10
  AND name LIKE 'J%';