1. Conhecer a estrutura dos dados (TABLE, HIERARCHYID DATA TYPE):
No SQL Server, a estrutura dos dados é geralmente organizada em tabelas. O tipo de dados HIERARCHYID é utilizado para representar dados hierárquicos, como uma árvore organizacional.
Exemplo:
CREATE TABLE Organizacao ( ID INT PRIMARY KEY, Nome NVARCHAR(100), Hierarquia HIERARCHYID );
2. Converter tipo de dados hierárquico em texto (TO STRING, GET ANCESTOR):
Para converter um tipo de dados HIERARCHYID em texto, você pode usar a função ToString(). Para obter o ancestral de um nó hierárquico, a função GetAncestor() é utilizada.
Exemplo:
SELECT Hierarquia.ToString() AS HierarquiaTexto, Hierarquia.GetAncestor(1) AS Ancestral FROM Organizacao;
3. Obter Hierarquia Organizacional (CTE, PATH, PATHITEM, RECURSIVE VALUES, UNION ALL):
Para obter uma hierarquia organizacional, você pode usar uma Common Table Expression (CTE) e a função GetAncestor().
Exemplo:
WITH HierarquiaCTE AS ( SELECT ID, Nome, Hierarquia FROM Organizacao WHERE Hierarquia IS NOT NULL UNION ALL SELECT o.ID, o.Nome, o.Hierarquia FROM Organizacao o INNER JOIN HierarquiaCTE h ON o.Hierarquia.GetAncestor(1) = h.Hierarquia ) SELECT * FROM HierarquiaCTE;
4. Separar texto em colunas (REPLACE, FOR XML, XML COLUMN, VALUE):
Para separar um texto em colunas no SQL Server, você pode usar a combinação de funções como REPLACE, FOR XML, XML COLUMN, e VALUE.
Exemplo:
SELECT REPLACE(Texto, ',', '') AS TextoSemVirgulas, CAST('<A>' + REPLACE(Texto, ',', '</A><A>') + '</A>' AS XML).value('/A[1]', 'VARCHAR(MAX)') AS PrimeiroElemento FROM TabelaTexto;
5. Criar exibição (CREATE VIEW):
Para criar uma exibição no SQL Server, você utiliza a declaração CREATE VIEW. As exibições são consultas armazenadas que podem ser referenciadas como tabelas.
Exemplo:
CREATE VIEW ViewOrganizacao AS SELECT ID, Nome FROM Organizacao WHERE Hierarquia IS NOT NULL;
6. Obter dados do SQL Server no Power BI (GET DATA):
7. Obter visual de diagrama no Power BI (GET MORE VISUALS):
8. Criar Hierarquia de colunas no Power BI (CREATE HIERARCHY):
Esses conceitos abrangem a integração entre SQL Server e Power BI, permitindo a manipulação de dados hierárquicos, a criação de visualizações e relatórios eficientes no Power BI a partir de fontes de dados no SQL Server.
Data Scientist and Consultant for Digital and Analytics Solutions
@fabioms