SQL: você só fica bom praticando com dados reais
(github.com/civilian7)SQL: você só fica bom praticando com dados reais
Existem muitos tutoriais de SQL. Mas a maioria para em exemplos com 3 tabelas employees.
No trabalho real, não é isso que você encontra. São 21 tabelas ligadas por chaves estrangeiras, você precisa extrair a tendência de faturamento mensal de 10 anos de dados de pedidos
e identificar clientes com risco de churn.
Foi por isso que eu criei isto.
https://github.com/civilian7/sql-tutorial — aprenda SQL com um banco de dados realista de e-commerce
Ele simula 10 anos de dados de uma loja de informática:
- 21 tabelas, 18 views, 5 triggers — um schema em nível profissional
- 230 mil a 10 milhões de linhas — gerador de dados com tamanho configurável
- 21 lições — de
SELECTa funções de janela, CTE recursiva e triggers - 111 exercícios — 45 básicos, 36 intermediários, 30 avançados
- Suporte completo a coreano/inglês — dados e documentação bilíngues
- Comparação entre dialetos de banco de dados — SQLite, MySQL, PostgreSQL, SQL Server, Oracle
Os dados são realistas. As vendas sobem na Black Friday, os pedidos caem no verão, e os 20% melhores clientes representam 60% do faturamento.
Também há 25% de clientes que só se cadastram e nunca fazem um pedido.
pip install -r requirements.txt
python generate.py --size small
cria output/tutorial.db (SQLite, ~29MB)
Este projeto foi feito por um desenvolvedor que não é especialista em SQL. Se houver algo incorreto ou uma forma melhor de fazer, avise por Issues/PRs.
7 comentários
Lançamos a versão 2.0 com recursos significativamente ampliados
Excelente projeto.
Nossa, que legal
Estou gostando tanto de usar que quis deixar um comentário. Ainda parece que só existe a opção de output em sqlite. Estou esperando pelo postgresql.
Muito obrigado por terem criado uma ferramenta tão boa
Gooood
Por favor, publique em show~
Comecei a criar isso para oferecer como exemplo padrão no navegador de consultas que estou desenvolvendo.
O código e a documentação foram feitos por IA (Claude).