SQL专栏

SQL数据库基础知识汇总

SQL数据库高级知识汇总

什么是DAX

它是英文Data Analysis Expression的缩写,中文意思就是数据分析表达式。它是公式或表达式中可用于计算并返回一个或多个值的函数、运算符或常量的集合。 简单来说,DAX 可帮助你通过模型中已有的数据来创建新信息。

DAX语法

为方便介绍,我们用上一篇中的一个度量值示例来具体介绍DAX的语法公式

城市数量 = COUNT(Customers1[城市])

1、城市数量是度量值的名称

2、=表示公式的开头,计算结束后将返回结果

3、COUNT()是DAX中的一个函数,表示计数

4、Customers1是被COUNT()函数引用的表,如果是中文名称的表需要加单引号''

5、[城市]是被引用的列,这样COUNT()函数就知道被聚合的是哪一列了。[]是必须加上的

DAX常用函数

上面的语法中我们介绍了DAX中常用的COUNT函数,此外还有很多我们常见的函数。

聚合函数

SUM 求和

MAX 求最大值

MIN 求最小值

AVERAGE 求平均值

COUNTROWS 计算行数

DISTINCTCOUNT 计算不重复值的个数

时间智能函数

时间智能函数通过使用时间段(包括日、月、季度和年)对数据进行操作,然后生成和比较针对这些时段的计算,支持商业智能分析的需要。常见的时间智能函数如下。

PREVIOUSYEAR/QUARTER/MONTH/DAY

表示上一年/季/月/日

NEXTYEAR/QUARTER/MONTH/DAY

表示下一年/季/月/日

TOTALYTD/QTD/MTD

表示年初/季初/月初至今

SAMEPERIODLASTYEAR

表示上年同期

PARALLELPERIOD

表示上一期

DATESINPERIOD

表示指定期间的日期

筛选器函数

筛选器函数与我们数据库中的WHERE条件语句非常类似,通过筛选指定的列来返回我们需要的结果集。常见的筛选器函数如下。

FILTER

表示另一个表或表达式的子集的表,主要用来筛选表

ALL

返回表中的所有行或者返回列中的所有值,同时忽略可能已应用的任何筛选器。主要用来清除筛选。

ALLEXCEPT

删除表中除已应用于指定列的筛选器之外的所有上下文筛选器。主要用来保留指定的列。

VALUES

返回由一列构成的一个表,该表包含来自指定表或列的非重复值。 换言之,重复值将被删除,仅返回唯一值。

RELATED

从另一个表返回相关值。主要通过关联关系返回另外一个表中的值。使用前提是必须存在关联关系。

CALCULATE

DAX中最重要的函数,在指定筛选器修改的上下文中计算表达式。常与各种函数嵌套使用。

批注

这一章只是让大家对DAX有个初步的认识,在后续的章节中我们会对DAX作进一步详细的讲解,比如每个函数的具体用法,一些复杂表达式的写法等等。

©著作权归作者所有:来自51CTO博客作者mb5fd8698f60f87的原创作品,如需转载,请注明出处,否则将追究法律责任

更多相关文章

  1. 精心整理了一套MySQL常用函数,速速收藏!
  2. SQL在数据处理过程中,遇到除数为0该怎么办?
  3. Shell进阶 文件查找 压缩打包
  4. PHP扩展知识:URL相关函数和api接口案例
  5. 笔记 | Python之函数式编程
  6. 详解javascript的bind方法
  7. Spark2.x精通:源码剖析SortShuffleWriter具体实现
  8. Spark2.x精通:BlockManagerMaster源码剖析
  9. Excel重大更新,VLOOKUP退役,新的搜索函数上线

随机推荐

  1. android:textAppearance解析
  2. Android异步处理三:Handler+Looper+Messag
  3. android setGravity()的使用
  4. Android CTS的使用
  5. Android中的Selector的用法
  6. Android检查权限
  7. EditText属性及使用
  8. Android体系结构
  9. Android事件处理之监听事件
  10. Android异步处理二:使用AsyncTask异步更新