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

2. Use recuo/espaçamento adequado
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;

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;

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 =)
Created with