Basicamente, vou refletir os comentários de Verace e declarar isso, tornando-o semi-oficial:
Não existe uma prática recomendada que cubra todas as circunstâncias. O que segue faz as seguintes suposições (e o que fazer se você não tiver feito isso):
- Você já discutiu isso com sua equipe (as pessoas que trabalham sozinhas geralmente precisam se decidir)
- Ainda não há uma definição formal de estilo para SQL em sua equipe (caso contrário, você não estaria nos perguntando)
- Não há definição formal de estilo para nenhum código (siga as mesmas convenções básicas já estabelecidas para outros idiomas e formalize um estilo)
Portanto, o resto é um pouco opinativo, mas baseado na experiência
- Quando se trata de nomes de tabelas
- Você deve procurar nomes de entidades singulares (isso facilita a documentação)
- Você deve usar o Pascal Case aqui
- Quando se trata de nomes de campos
- Use camelCase nos nomes dos seus campos
- Use nomes curtos no singular, a menos que a definição definitivamente faça sentido como plural (quase nunca)
- Quando se trata de sua própria função ou nomes de procedimentos armazenados
- Use underscore_separation
- Use a nomeação de campos para a parametrização
- Quando se trata de funções internas de banco de dados ou nomes de idiomas (por exemplo, SELECT)
- A menos que haja um requisito para que seja capitalizado de uma certa maneira, use TODOS OS CAPS
- Conheça as APIs do seu idioma para saber o que é razoável ou necessário
- Quando se trata de espaçamento
- Muitas pessoas usam alinhamento de coluna para palavras-chave e recuo para itens que não são palavras-chave
- Muitas pessoas usam vírgulas no início da linha quando os campos são separados em cada linha (isso facilita o comentário de um campo específico de uma lista de seleção)
- Nunca use espaços como parte dos nomes das coisas, nem mesmo para cabeçalhos de valor de retorno.
- Quando se trata de pontuação
- Parênteses - USE-OS. Eles são grátis. Eu prometo.
- Ponto e vírgula - USE-OS. Eles não vão te quebrar. Eles o forçam a pensar em seu código. E eles são de boa higiene.
- Devoluções de carro - Mais uma vez, elas são gratuitas ;-) E torne seu código legível.
Você também deve reconhecer que, enquanto estou tentando ajudá-lo a aplicar um guia de estilo genérico, a comunidade do Postgres geralmente não usa camelCase ou PascalCase, mas usa underscore_separation. O mais importante é garantir que você estabeleça e use um estilo específico em qualquer lugar para ser consistente .