Práticas recomendadas para escrever um código limpo em SQL
Jun 8 / Referência: Anmol Tomar

Práticas recomendadas de codificação SQL para escrever código limpo
Saiba como tornar seu código SQL interpretável
Por que precisamos seguir as melhores práticas de codificação SQL?
A jornada para alcançar bons resultados de análise é repleta de explorações, experimentações e testes de várias abordagens. Nesta jornada, escrevemos muitos códigos aos quais nós e outros nos referimos enquanto trabalhamos em equipe. Se o seu código não estiver limpo o suficiente, será uma dor para os outros (e para você também) entender, reutilizar ou modificar seu código.
Se você escrever um código limpo e organizado, agradecerá a si mesmo e os outros também agradecerão.
Este blog apresentará as melhores práticas de codificação SQL para escrever código limpo e organizado.
Práticas recomendadas de codificação SQL
1. Use Maiúsculas para as Cláusulas
Você deve usar letras maiúsculas para as cláusulas SQL, pois isso ajudará você ou qualquer pessoa que esteja lendo seu código a encontrar facilmente quais operações/manipulações você está realizando.
Prática ruim
select order_id, prod_id, vendas from db.Order
Boa prática
SELECT order_id, prod_id, sales FROM db.Order
Ter um recuo adequado do seu código é muito crucial, faz com que seu código pareça limpo e, portanto, muito fácil para qualquer pessoa seguir.
Prática ruim
SELECT colunaB, AGG_FUNC(column_or_expression) FROM left_table JOIN right_table ON left_table.columnA = right_table.columnA WHERE filter_expression GROUP BY colunaB
HAVING filter_expression ORDER BY colunaB ASC/DESC LIMIT ROW_COUNT;
HAVING filter_expression ORDER BY colunaB ASC/DESC LIMIT ROW_COUNT;
Boa prática
SELECT colunaB,
AGG_FUNC(colunaC)
FROM left_table
JOIN right_table
ON left_table.columnA = right_table.columnA
WHERE filter_expression
GROUP BY colunaB
HAVING filter_expression
ORDER BY colunaB ASC/DESC
LIMIT ROW_COUNT;
AGG_FUNC(colunaC)
FROM left_table
JOIN right_table
ON left_table.columnA = right_table.columnA
WHERE filter_expression
GROUP BY colunaB
HAVING filter_expression
ORDER BY colunaB ASC/DESC
LIMIT ROW_COUNT;
3. Usar Alias
Os aliases são usados para fornecer a columns , um nome intuitivo definido pelo usuário. Os aliases no SQL são criados usando 'as', seguido pelo nome definido pelo usuário.
Prática ruim
SELECT OrderID,
SUM(Preço),
FROM table1
INNER JOIN tabela 2
ON table1.ProductID = tabela 2.ProductID
GROUP BY OrderID
Boa prática
SELECT Products .OrderID,
SUM( OrderDetails .Price ) como Order_Amount ,
FROM table1 como OrderDetails
INNER JOIN tabela 2 como Products
ON OrderDetails.ProductID = Products.ProductID
GROUP BY Products .OrderID
4. Nomes de tabela intuitivos
Definir nomes de tabela intuitivos torna muito fácil para outros desenvolvedores entenderem o objetivo do código. Os nomes devem representar o que você está tentando alcançar.
Prática ruim
CREATE TABLE db.table1 as
SELECT OrderDate,
count(OrderID)
FROM Orders
WHERE EmployeeID = 3
GROUP BY OrderDate
Boa prática
CREATE TABLE db.Orders_across_dates como
SELECT OrderDate,
count(OrderID) como Total_Orders
FROM Orders
WHERE EmployeeID = 3
GROUP BY OrderDate
5. Comente o código
Comentar sobre o código é uma das etapas mais importantes para tornar seu código legível e fácil de entender.
Os comentários devem abranger os seguintes aspectos:
O objetivo do código.
Nome do autor.
Data do roteiro.
Descrição do código.
Prática ruim
SELECT Products.OrderID,
SUM(OrderDetails.Price) como Order_Amount,
FROM table1 como OrderDetails
INNER JOIN tabela 2 como Products
ON OrderDetails.ProductID = Products.ProductID
GROUP BY Products.OrderID
Boa prática
/*
Objetivo: Obter o valor do pedido correspondente a cada pedido.
Autor: Anmol Tomar
Script Data: 05 de maio de 2022
Descrição: Este código fornece o id do pedido e o valor do pedido correspondente juntando a tabela OrderDetails e Products na ProductID (Primary Key)
*/
SELECT Products.OrderID,
SUM(OrderDetails.Price) como Order_Amount ,
FROM table1 como OrderDetails
INNER JOIN tabela 2 como Products
ON OrderDetails.ProductID = Products.ProductID
GROUP BY Products.OrderID
6. Mencione os nomes das colunas na cláusula SELECT
Usar nomes de colunas na cláusula SELECT é muito útil para entender quais colunas (ou informações) estamos selecionando para nossa saída. Usar select * torna a saída um pouco de uma caixa preta, pois oculta as informações/colunas selecionadas.
Prática ruim
SELECT *
FROM db.Order
Boa prática
SELECT order_id,
prod_id,
sales
FROM db.Order
Se você gostou desse conteúdo comente aqui para trazermos mais conteúdos como esse =)

Nossa escola online e comunidade para Data Science é o lugar perfeito para você aprender os fundamentos, a prática e utilizar cases reais de mercado.
Copyright © 2022
NAVEGUE POR AQUI
SE CONECTE CONOSCO
-
Youtube
-
Instagram
-
Linkedin