No que se refere às técnicas de programação utilizando banco de dados.
CREATE TABLE estados
(
ibge numeric(7,0),
sigla character varying(2) NOT NULL,
nome character varying(50),
area numeric(15,5),
CONSTRAINT pk_estados PRIMARY KEY (sigla),
CONSTRAINT uq_estado_ibge UNIQUE (ibge)
)
CREATE TABLE municipios
(
ibge numeric(7,0) NOT NULL,
uf numeric(2,0),
nome character varying(50),
area numeric(15,5),
CONSTRAINT pk_municipio PRIMARY KEY (ibge),
CONSTRAINT fk_municipio_estado FOREIGN KEY (uf)
REFERENCES estados (ibge)
)
Considerando a linguagem de definição de dados e o código acima, que tem como objetivo criar duas relações estados e municípios, julgue o item.
A expressão SQL abaixo terá como resultado nome do município, área do município e sigla do estado que tem o menor município em tamanho (menor área).
select foo1.area, foo1.sigla, foo2.nome
from estados as foo1,
(
select uf, nome, area
from municipios as foo1
where area =
(select min(area)
from municipios as foo2
where area>0)
) as foo2
where foo2.uf=foo1.ibge