Todo mundo que trabalha com Power BI já ouviu falar (ou até construiu) uma tabela dimensão de calendário — a famosa dCalendário. Ela é quase uma celebridade entre os analistas: serve como base para análises temporais, agrupamentos por ano, mês, trimestre, semestre... enfim, tudo o que envolve o tempo em dias.
Mas deixa eu te fazer uma pergunta:
👉 E se, em vez de analisar quando no calendário algo aconteceu, a gente quisesse entender em que hora do dia isso costuma acontecer?
Pois é. Pouca gente fala sobre isso, mas existe um conceito tão poderoso quanto o da dCalendário: a dimensão de tempo — ou simplesmente dTime. Ela é a “prima rica” da dCalendário (ou talvez a prima misteriosa 😄).
Entendendo o contexto: tabelas fato e dimensão
Antes de tudo, vale lembrar a estrutura clássica dos modelos de dados no Power BI:
- As tabelas fato são aquelas que contêm os eventos ou transações do seu negócio — por exemplo, vendas, atendimentos, missões, pedidos etc.
- Já as tabelas dimensão são as que trazem o contexto para analisar esses eventos — como dimensão calendário, dimensão produto, dimensão cliente ou a nossa nova amiga, a dimensão de tempo.
A mágica acontece quando conectamos as dimensões às tabelas fato. É isso que permite criar análises poderosas e dinâmicas — e entender não só o “o quê”, mas também o “quando” e o “como” algo acontece.
⏳ Por que criar uma dimensão de tempo?
Em muitas análises, o fator hora pode revelar padrões que o dia, por si só, não mostra.
📊 Exemplos:
- Em que horário ocorrem mais atendimentos ou falhas em um sistema?
- Qual intervalo do dia concentra o maior volume de vendas?
- Quando é o “horário nobre” das suas operações?
Esses insights só aparecem quando você olha para o tempo em detalhe — não apenas para a data.
Como criar uma dimensão de tempo no Power BI
O primeiro passo é simples: parta de uma tabela que contenha uma coluna de hora (ou datetime). Caso ela seja datetime, é uma boa prática separá-la em duas:
- Uma contendo apenas a data
- Outra contendo apenas o horário
Isso facilita muito as análises, relacionamentos e cálculos DAX.
🧩 Essa separação pode ser feita de duas formas:
No Power Query (Editor de Consultas)
Você pode criar colunas personalizadas usando M, por exemplo:
ColunaData = DateTime.Date([DataHora])
ColunaHora = DateTime.Time([DataHora])
Com isso, você extrai a parte de data e hora diretamente no momento da transformação — garantindo performance e clareza no modelo.
Ou nas transformações visuais (no próprio Power BI Desktop)
Basta selecionar a coluna datetime e criar novas colunas calculadas:
Para a data:
Data = DATEVALUE(Tabela[DataHora])
Para a hora:
Hora = TIMEVALUE(Tabela[DataHora])
Ambas as abordagens são válidas — escolha conforme sua necessidade e etapa do projeto.
Criando a dTime com DAX
Depois de separar as colunas, você pode criar a sua tabela dimensão de tempo com a fórmula abaixo:
dTime =
FILTER(
VALUES(space_missions[Time]),
NOT(ISBLANK(space_missions[Time]))
)
Essa expressão coleta todos os valores únicos de hora da sua base (que pode ser uma tabela fato, por exemplo) e remove os valores nulos.
Enriquecendo sua tabela de tempo
A partir disso, você pode enriquecer a dTime com novas colunas que ajudam na categorização e análise, conforme as seguintes sugestões:
TimeText = CONVERT(dTime[Time], STRING)
🔹 Converte o valor da hora para texto formatado (ex.: “07:30:00”).
TimeNumber = CONVERT(MID(dTime[Time],1,2),INTEGER)
🔹 Extrai a hora numérica, permitindo segmentações e cálculos (ex.: 7, 14, 19).
Interval =
SWITCH(
TRUE(),
dTime[TimeNumber] >= 0 && dTime[TimeNumber] < 6 , "⏱️00:00 - 06:00",
dTime[TimeNumber] >= 6 && dTime[TimeNumber] < 12 , "⏱️06:00 - 12:00",
dTime[TimeNumber] >= 12 && dTime[TimeNumber] < 18 , "⏱️12:00 - 18:00",
"⏱️18:00 - 00:00"
)
🔹 Classifica cada horário em um intervalo específico do dia — perfeito para visualizações de concentração ou volume de ocorrências.
O poder dos detalhes
Assim como a dCalendário nos ajuda a entender o “quando” no macro, a dTime nos permite entender o “quando” no micro. E muitas vezes, é nesse detalhe que mora o verdadeiro insight.
Então, da próxima vez que for construir seu modelo no Power BI, lembre-se:
📆 A dCalendário é indispensável…
🕒 Mas a dTime pode ser reveladora.
Você já tinha ouvido falar sobre essa possibilidade? Já usou uma dimensão de tempo em seus relatórios?