MySQL
De Softwiki
1. Nome de todas as cidades: select c.Name from City c;
2. Nome de todas as cidades que começam com A: select c.Name from City c where c.Name like 'A%';
3. Uma mega-cidade é aquela onde a população ultrapassa 5 milhões. Quais são essas cidades? select c.Name, c.Population from City c where c.Population > 5000000;
4. Em ordem de população? select c.Name, c.Population from City c where c.Population > 5000000 order by c.Population desc;
5. Quantas cidades tem menos de 1000 habitantes? select count(*) from City c where c.population < 1000
6. Qual a menor cidade em número de habitantes? (tente usar limit) select c.Name, c.Population from City c order by c.Population limit 1
7. A qual país pertence cada cidade? select c.Name, p.Name from City c, Country p where c.CountryCode = p.Code order by p.Name, c.Name select c.Name, p.Name from City c left join Country p on c.CountryCode = p.Code order by p.Name, c.Name
8. Qual a capital de cada país? select p.Name, c.Name from City c, Country p where where c.CountryCode = p.Code select c.name, p.name from City c right join Country p on c.id = p.Capital
9. Qual a média de habitantes nas cidades? select avg(c.Population) from City c
10. Qual o número de habitantes total 'do mundo'? select sum(c.Population) from City c
11. Quantos habitantes e cidade há em cada país? select p.Name, sum(c.Population) as Populacao, count(c.ID) as Cidades from City c, Country p where c.CountryCode = p.Code group by p.Code order by Populacao desc
12. Quantos habitantes e cidades há em países que falam português? select p.Name, sum(c.Population) as Populacao, count(c.ID) as Cidades, l.Language, l.Percentage, sum(c.Population) * l.Percentage/100 as Falantes from City c, Country p, CountryLanguage l where c.CountryCode = p.Code and l.CountryCode = p.Code and l.Language like 'Port%' group by p.Code order by Populacao desc
13. Quantos habitantes e cidades há em países que falam português e começam pela letra c? select p.Name, sum(c.Population) as Populacao, count(c.ID) as Cidades, l.Language, l.Percentage, sum(c.Population) * l.Percentage/100 as Falantes from City c, Country p, CountryLanguage l where c.CountryCode = p.Code and l.CountryCode = p.Code and l.Language like 'Port%' group by p.Code having p.Name like 'C%' order by Populacao desc
14. Quantas pessoas falam português? create view Speak as (select p.Name, sum(c.Population) as Populacao, count(c.ID) as Cidades, l.Language, l.Percentage, sum(c.Population) * l.Percentage/100 as Falantes from City c, Country p, CountryLanguage l where c.CountryCode = p.Code and l.CountryCode = p.Code and l.Language like 'Port%' group by p.Code order by Populacao desc);
select sum(Falantes) from Speak;
15. Qual o segundo pais que mais gente fala Português? select * from Speak order by Falantes desc limit 1 offset 1
Refeência: Banco de Dados World
1. Nome de todas as cidades?
2. Nome de todas as cidades que começam com A?
3. Uma mega-cidade é aquela onde a população ultrapassa 5 milhões. Quais são essas cidades?
4. Em ordem de população?
5. Quantas cidades tem menos de 1000 habitantes?
6. Qual a menor cidade em número de habitantes? (tente usar limit)
7. A qual país pertence cada cidade?
8. Qual a capital de cada país?
9. Qual a média de habitantes nas cidades?
10. Qual o número de habitantes total 'do mundo'?
11. Quantos habitantes e cidade há em cada país?
12. Quantos habitantes e cidades há em países que falam português?
13. Quantos habitantes e cidades há em países que falam português e começam pela letra c?
14. Quantas pessoas falam português?
15. Qual o segundo pais que mais gente fala Português?
16. Quais países tem média de habitantes por cidade menor que 200 mil?
17. Quais cidades tem as seguintes populações (234323, 201843, 193238)? (tente usar in)
18. Quais cidades tem populações entre 250 mil e 300 mil? (tente usar between val1 and val2)
19. E quantas cidades não estão neste intervalo?
20. Quais países não possuem capital?
21. As cidades podem ser divididas em 4 classificações, pela população: - pequenas, com menos de 100 mil habitantes - médias, com menos de 1 milhão de habitantes - grandes, com até 10 milhões de habitantes - enormes, com mais de 10 milhões.
Faça uma consulta que exiba cada cidade, com seu país e sua classificação. (use interval(N, N1,
N2))
22. Agora use IF (teste, então, senão) e exiba a classificação como um texto numa coluna ao lado
do nome da cidade do país. Exemplo de if:
select if (1 > 0, "normal", "o universo entrou em colapso")
Instalação do MySQL no Windows
1. Baixe o arquivo noinstall para Windows ([1]). No momento em que escrevo esse tutorial o mais recente é: mysql-noinstall-5.1.35-win32.zip (que veio no CD do curso).
2. Descompacte esse arquivo para uma pasta c:\mysql.
3. Abra um prompt de comando e vá até o diretório bin, digite: cd \mysql\bin.
4. Inicie o MySQL. Ainda no prompt de comando digite: mysqld --console
5. Pronto, o MySQL já está funcionando. Você já pode se conectar a ele com a ferramenta gráfica MySQL Query Browser. Nome de usuário root, na senha deixar vazio e no host colocar localhost. Se aparecer uma tela de aviso, clique em Ignore.
6. Baixe o banco de dados de exemplo, world: Nesta página [2] procure por world database (all versions, used in MySQL certifications and training) e faça o download.
7. Para carregar o banco de dados de exemplo, você pode ir em: File, Open Script. Na caixa, localize o arquivo world.sql, dentro do diretório exemplos no cd. (opcional: selecione conversão para latin1.) Agora basta executar o script. Caso ele apresente algum erro, crie primeiro o banco de dados e selecione-o com: create database world; e depois use world;.

