More SQL exercises

From GeoBox

Jump to: navigation, search

Modificar registos

Um registo.

UPDATE contribuinte
SET nome = 'CRISTIANA TOMÁS'
WHERE nome = 'CRISTIANA TOMAS'

Vários registos em simultâneo.

UPDATE contribuinte
SET observacoes = 'Viva o Braga'
WHERE nome ilike '%cristiana%'

Apagar mais do que um registo.

DELETE FROM contribuinte
WHERE nome ilike '%cristiana%' AND codpostal LIKE '4750%'

Relações

SELECT * 
FROM profissao
WHERE codprofissao = 35
SELECT *
FROM contribuinte
WHERE codprofissao = 35
SELECT nome, codpostal, codprofissao
FROM contribuinte
WHERE nome ilike '%cristiana%'

Finalmente, juntamos os contribuintes com as profissões.

SELECT nome, codpostal, designacao
FROM contribuinte, profissao
WHERE nome ilike '%cristiana%' AND contribuinte.codprofissao = profissao.codprofissao

Exercício (resolvido)

Saber o nome de todos que trabalham numa determinada profissão, por exemplo "TRATADOR DE PEIXE, CRUSTÁCEOS E MOLUSCOS"

Primeira tentativa: contar quantos existem.

SELECT COUNT(*)
FROM contribuinte
WHERE codprofissao = 453

Segunda tentativa: mostrar o nome de todos que têm essa dada profissão.

SELECT nome
FROM contribuinte
WHERE codprofissao = 453

E se forem todos os que trabalham em profissões relacionadas com peixe?

Exercício (para resolver)

SELECT nome, designacao
FROM contribuinte, profissao
WHERE contribuinte.codprofissao = profissao.codprofissao AND designacao ilike '%peixe%'
Personal tools