Enunciados de questões e informações de concursos
Analise o script a seguir, no âmbito do PostgreSQL.
CREATE TABLE T (
chave serial NOT NULL PRIMARY KEY,
dados json NOT NULL
);
INSERT INTO T (dados)
VALUES
('{ "nome": "Maria", "notas":
{"disciplina":"Fisica","nota": 10}}'),
('{ "nome": "Pedro", "notas":
{"disciplina":"Calculo","nota": 9}}');
O comando SQL que produz corretamente uma lista dos alunos, com a matrícula, nome e respectivas disciplinas e notas é:
chave matricula,
dados!'nome' AS aluno,
dados!'notas'>>'disciplina' disc,
dados!'notas'>>'nota' grau
FROM T;
chave matricula,
dados -> 'nome' AS aluno,
dados -> 'notas' ->> 'disciplina' disc,
dados -> 'notas' ->> 'nota' grau
FROM T;
chave matricula,
nome AS aluno,
notas ->> 'disciplina' disc,
notas ->> 'nota' grau
FROM T;
chave matricula,
dados -> 'nome' AS aluno,
dados -> 'notas.disciplina' disc,
dados -> 'notas.nota' grau
FROM T;