在powerbi报表中,我们往往会对数据源进行日常刷新,powerbi链接了数据库的情况下,根据日期灵活取数是我们必须掌握的一个技能。

在本文中,我们将介绍如何使用 SQL 的 DATE_SUB 函数来获取数据库中最近 90 天的数据。

DATE_SUB 函数是一个 MySQL 的函数,它可以从一个日期或时间值中减去一个指定的时间间隔,然后返回结果。我们可以利用这个函数来筛选出我们想要的时间范围内的数据。

以下是本文的思维导图:

一:DATE_SUB 函数语法

1.1  基础语法

DATE_SUB(date, INTERVAL expr type)

其中,date 参数是一个合法的日期或时间表达式,expr 参数是一个数值,表示要减去的时间间隔的数量,type 参数是一个字符串,表示时间间隔的类型。type 参数可以是以下值之一:

- MICROSECOND- SECOND- MINUTE- HOUR- DAY- WEEK- MONTH- QUARTER- YEAR,等等

二: sql示例

2.1  简单示例

例如,如果我们想要从当前日期减去 3 天,我们可以写成:

DATE_SUB(CURDATE(), INTERVAL 3 DAY)

CURDATE() 函数返回当前日期,INTERVAL 3 DAY 表示 3 天的时间间隔。这个表达式的结果是一个日期值,比如 '2023-05-09'。

如果我们想要从当前时间减去 2 小时 30 分钟,我们可以写成:

DATE_SUB(NOW(), INTERVAL '2:30' HOUR_MINUTE)

NOW() 函数返回当前时间,INTERVAL '2:30' HOUR_MINUTE 表示 2 小时 30 分钟的时间间隔。这个表达式的结果是一个时间值,比如 '2023-05-12 03:40:04'。

2.2  sql实例

如果是获取90天数据呢?

假设我们有一个flow_data表,里面有日期,门店所在城市,营业额,订单字段。

那么,现在要查询分日期,门店所在城市的营业额、订单数,并且要滚动90天,下方是示例的sql代码。

SELECT
日期,门店所在城市,
SUM(营业额) AS 营业额 ,
SUM(订单数) AS 订单数,
FROM
flow_data
WHERE
日期 BETWEEN DATE_SUB(CURRENT_DATE(),INTERVAL 90 day) and CURRENT_DATE()
GROUP BY
日期,门店所在城市

可以看到,最关键的是WHERE 后面的限定条件被我们用DATE_SUB函数设置为了滚动90天。

"BETWEEN  and  "语句,在sql中意为"在....之中",这个语句中,起始日期为90天前,截止日期为当前的日期,那么是不是就是滚动90天了呢?理解了这个就可以灵活使用了。

三:POWERBI 连接数据库

在powerbi界面,点击工具栏获取数据,点击更多。

根据自己实际需要链接的数据库类型选择,这里以ODBC举例

点击链接,选择对应的数据库源,将刚刚的写好的sql语句粘贴到对应位置

点击确定后,即可获取对应sql语句的数据源,下面的内容就不做演示了。

下次刷新数据的时候,pq就会自动刷新最近90天的数据。

大家可以根据自己的实际业务,应用知识。今天的分享就到这里,再见。

#PowerBi 1分钟学会,用PowerBi获取数据库最近90天的数据(DATE_SUB)的更多相关文章

  1. 三分钟学会使用Derby数据库

    Derby数据库是一个纯用Java实现的内存数据库,属于Apache的一个开源项目.由于是用Java实现的,所以可以在任何平台上运行:另外一个特点是体积小,免安装,java1.6开始集成了derby数 ...

  2. PHP学习过程_Symfony_(3)_整理_十分钟学会Symfony

    这篇文章主要介绍了Symfony学习十分钟入门教程,详细介绍了Symfony的安装配置,项目初始化,建立Bundle,设计实体,添加约束,增删改查等基本操作技巧,需要的朋友可以参考下 (此文章已被多人 ...

  3. 【译】10分钟学会Pandas

    十分钟学会Pandas 这是关于Pandas的简短介绍主要面向新用户.你可以参考Cookbook了解更复杂的使用方法 习惯上,我们这样导入: In [1]: import pandas as pd I ...

  4. 《量化投资:以MATLAB为工具》连载(2)基础篇-N分钟学会MATLAB(中)

    http://www.matlabsky.com/thread-43937-1-1.html   <量化投资:以MATLAB为工具>连载(3)基础篇-N分钟学会MATLAB(下)     ...

  5. 30分钟学会使用Spring Web Services基础开发

    时隔一年终于又推出了一篇30分钟系列,上一篇<30分钟学会反向Ajax>是2016年7月的事情了.时光荏苒,岁月穿梭.虽然一直还在从事Java方面的开发工作,但是私下其实更喜欢使用C++. ...

  6. 【公众号系列】两分钟学会SAP F1技巧

    公众号:SAP Technical 本文作者:matinal 原文出处:http://www.cnblogs.com/SAPmatinal/ 原文链接:[公众号系列]两分钟学会SAP F1技巧   写 ...

  7. 如何从40亿整数中找到不存在的一个 webservice Asp.Net Core 轻松学-10分钟使用EFCore连接MSSQL数据库 WPF实战案例-打印 RabbitMQ与.net core(五) topic类型 与 headers类型 的Exchange

    如何从40亿整数中找到不存在的一个 前言 给定一个最多包含40亿个随机排列的32位的顺序整数的顺序文件,找出一个不在文件中的32位整数.(在文件中至少确实一个这样的数-为什么?).在具有足够内存的情况 ...

  8. 一分钟在云端快速创建MySQL数据库实例

    本教程将帮助您了解如何使用Azure管理门户迅速创建,连接,配置MySQL 数据库 on Azure.完成本教程后,您将在Azure上拥有一个示例MySQL数据库服务器,并了解如何使用管理门户执行基本 ...

  9. [转]三分钟学会.NET Core Jwt 策略授权认证

    [转]三分钟学会.NET Core Jwt 策略授权认证 一.前言# 大家好我又回来了,前几天讲过一个关于Jwt的身份验证最简单的案例,但是功能还是不够强大,不适用于真正的项目,是的,在真正面对复杂而 ...

  10. 数据可视化之powerBI入门(九)PowerBI数据建模:其实一点都不高深

    https://zhuanlan.zhihu.com/p/64149834 数据建模并没有那么高深,你同样可以学会!这篇文章通过一个实例创建一个简单的数据建模,并引出两个重要的概念:度量值和DAX. ...

随机推荐

  1. EMR on ACK 全新发布,助力企业高效构建大数据平台

    ​简介: 阿里云 EMR on ACK 为用户提供了全新的构建大数据平台的方式,用户可以将开源大数据服务部署在阿里云容器服务(ACK)上.利用 ACK 在服务部署和对高性能可伸缩的容器应用管理的能力优 ...

  2. [Trading] 人物: 陈向忠日内交易技术核心 - 趋势形态与成交量

    分时图判断趋势(开仓方向) 只要是低点不断抬高的,就是上涨趋势,高点是否提高是其次的. 只要是高点不断降低的那就是下降趋势,假如低点也在不断降低,那么这样的下降趋势就更加完美一些. 很多人就是看对了趋 ...

  3. 读取 k8s 存储在 etcd 上的数据

    读取 k8s 存储在 etcd 上的数据 Etcd Assistant 是一款 Etcd 可视化管理工具,便捷高效地操作您的 etcd 集群:支持多种键的视图:管理租约.用户.角色和权限. etcd是 ...

  4. 基于FPGA的二进制转BCD

    BCD码(nary-Coded Decimal‎)又称二-十进制代码,亦称二进码十进数.是一种二进制的数字编码形式,用二进制编码的十进制代码.这种编码形式利用了四个位元来储存一个十进制的数码. 在数字 ...

  5. 012_DRC检查与处理

    Check entire design:DRC检查整个原理图: Check Selection:DRC检查选择的部分电路: Use occurrences:选择所有事件进行检查: Use instan ...

  6. 随机化Tricks

    参阅: https://zh.cppreference.com/w/cpp/numeric/random https://zh.cppreference.com/w/cpp/header/random ...

  7. go http请求如果参数中带有"等特殊字符,参数传输可能会出现问题

    编码完整的URL url.QueryEscape(urlStr) 编码完整的URL 如果我们要对完整的 URL 进行编码呢? 就是PHP中 urlencode() 函数的功能. 在 GO 语言下可以直 ...

  8. Splashtop远程桌面再次增强:支持4K视频流

    远程桌面工具,主流的有10款总有,国内用的比较多的有teamviewer.Splashtop.向日葵等.几款软件各有千秋,其中Splashtop最大的特性就是快速.流畅.产品无敌,运营佛系,哈哈.下面 ...

  9. C语言:输入一个整数并让其逆反输出。123->321

    主要思想为: a)计算输入的位数有多少个 b)计算出最高位的单位(若最高位为是万位, 那么需要一个变量存储最高位数值1000) c)用取模的方法从个位数开始进行取出每一个单位上的数字 d)从个位数开始 ...

  10. docker之docker-compose

    docker-compose就是个二进制的工具,它可以单机编排,批量管理多个容器 [root@mcwk8s01 harbor]# file /usr/local/bin/docker-compose ...