一:函数式语言

DAX是一个函数式语言,应用于Analysis Services , PowerPivot , 和Power Bi 。

二:共同与不同

2.1  共同点

DAX与PowerPivot for Excel 一起诞生,DAX生来就是Excel系统的一部分,因此,Dax有一部分表达式的语义表达和EXCEL有很多的共同之处,如部分函数的名称和语义都大体相同。

2.2  不同点

举例,计算区域定义不同,例如在excel中如果我要计算一组数据,那么我可以直接指定我的计算区域(如A1:A9)求和,如果是DAX就必须使用特定函数去计算。

个人理解,EXCEL的更倾向于界面呈现数据,去指定计算范围,所以绝对引用,相对引用这些概念很重要,而DAX是列式计算工具,必须依靠筛选查询,去得到指定的计算范围,这里的筛选可以是内部筛选器,也可以是DAX所处的计算环境,两者定义计算区域的不同,就决定了在某些特定的情况下,同一个计算指标,两个工具去计算难度会相差很大。总的来说,DAX会更灵活更强大,帮助我们去定位计算区域,从而计算复杂逻辑的指标

2.3 个人理解

EXCEL的更倾向于界面呈现数据,去指定计算范围,所以绝对引用,相对引用这些概念很重要。

而DAX是列式计算工具,必须依靠筛选查询,去得到指定的计算范围,这里的筛选可以是内部筛选器,也可以是DAX所处的计算环境,

两者定义计算区域的不同,就决定了在某些特定的情况下,同一个计算指标,两个工具去计算难度会相差很大。

总的来说,DAX会更灵活更强大,帮助我们去定位计算区域,从而计算复杂逻辑的指标

三:代码格式化的重要性

代码格式化会更利于我们去理解自己写的DAX,规范化的代码也有利于DAX的调试和查错。
作者推荐了一个网站去协助使用者一键格式化代码。
www.daxformatter.com

SQLBI_精通DAX课程笔记_01_DAX介绍的更多相关文章

  1. ng-深度学习-课程笔记-1: 介绍深度学习(Week1)

    1 什么是神经网络( What is a neural network ) 深度学习一般是指非常非常大的神经网络,那什么是神经网络呢? 以房子价格预测为例,现在你有6个房子(样本数量),你知道房子的大 ...

  2. Andrew Ng机器学习课程笔记--week1(机器学习介绍及线性回归)

    title: Andrew Ng机器学习课程笔记--week1(机器学习介绍及线性回归) tags: 机器学习, 学习笔记 grammar_cjkRuby: true --- 之前看过一遍,但是总是模 ...

  3. 在线课程笔记—.NET基础

    关于学习北京理工大学金旭亮老师在线课程的笔记. 介绍: 在线课程网址:http://mooc.study.163.com/university/BIT#/c 老师个人网站:http://jinxuli ...

  4. Andrew Ng机器学习课程笔记(五)之应用机器学习的建议

    Andrew Ng机器学习课程笔记(五)之 应用机器学习的建议 版权声明:本文为博主原创文章,转载请指明转载地址 http://www.cnblogs.com/fydeblog/p/7368472.h ...

  5. Andrew 机器学习课程笔记

    Andrew 机器学习课程笔记 完成 Andrew 的课程结束至今已有一段时间,课程介绍深入浅出,很好的解释了模型的基本原理以及应用.在我看来这是个很好的入门视频,他老人家现在又出了一门 deep l ...

  6. Deeplearning.ai课程笔记--汇总

    从接触机器学习就了解到Andrew Ng的机器学习课程,后来发现又出来深度学习课程,就开始在网易云课堂上学习deeplearning.ai的课程,Andrew 的课真是的把深入浅出.当然学习这些课程还 ...

  7. 深度学习课程笔记(十二) Matrix Capsule

    深度学习课程笔记(十二) Matrix Capsule with EM Routing  2018-02-02  21:21:09  Paper: https://openreview.net/pdf ...

  8. 深度学习课程笔记(七):模仿学习(imitation learning)

    深度学习课程笔记(七):模仿学习(imitation learning) 2017.12.10 本文所涉及到的 模仿学习,则是从给定的展示中进行学习.机器在这个过程中,也和环境进行交互,但是,并没有显 ...

  9. Andrew Ng机器学习课程笔记(六)之 机器学习系统的设计

    Andrew Ng机器学习课程笔记(六)之 机器学习系统的设计 版权声明:本文为博主原创文章,转载请指明转载地址 http://www.cnblogs.com/fydeblog/p/7392408.h ...

  10. Andrew Ng机器学习课程笔记(四)之神经网络

    Andrew Ng机器学习课程笔记(四)之神经网络 版权声明:本文为博主原创文章,转载请指明转载地址 http://www.cnblogs.com/fydeblog/p/7365730.html 前言 ...

随机推荐

  1. 【视频特辑】提效神器!如何用Quick BI高效配置员工的用数权限

    ​简介:随着企业数字化进程逐步加速,企业所产生和积累的数据资源日益增多.每当员工的用数权限发生变动,管理员都需要进行复杂繁琐的重复性配置流程,不仅耗时耗力还容易出错. 如何能便捷地对员工用数权限进行高 ...

  2. GRPC: 如何优雅关闭进程(graceful shutdown)

    ​简介: 本文将介绍优雅关闭 gRPC 微服务.在进程收到关闭信号时,我们需要关闭后台运行的逻辑,比如,MySQL 连接等等. 介绍 本文将介绍优雅关闭 gRPC 微服务. 什么是优雅关闭? 在进程收 ...

  3. 2018-12-26-WPF-开启-ScrollViewer-的触摸滚动

    title author date CreateTime categories WPF 开启 ScrollViewer 的触摸滚动 lindexi 2018-12-26 14:24:26 +0800 ...

  4. Java equals(),== 和 hashcode()

    首先来看看equals() 和 "==" 的关系 1.在Java中==是用来比较两个对象的内存地址是否相同的,如果是基本类型的话将会比较其值. 2.equals()我们如果使用的是 ...

  5. 免费的visual studio智能代码插件——CodeGeeX

    CodeGeeX是什么?什么是CodeGeeX? CodeGeeX是一款基于大模型的智能编程助手,它可以实现代码的生成与补全,自动为代码添加注释,不同编程语言的代码间实现互译,针对技术和代码问题的智能 ...

  6. minicube安装

    minicube安装 一.安装手册: https://minikube.sigs.k8s.io/docs/start/ 二.安装 打开官网,选择和自己对应的系统和要下载的版本.点击下面的release ...

  7. anaconda安装cv2库

    在安装cv2库之前,需要进行以下准备工作: 安装Anaconda 如果还没有安装Anaconda,可以在官网上下载对应操作系统的Anaconda安装包,然后按照提示进行安装.安装完成后,可以在终端中输 ...

  8. Docker服务搭建个人音乐播放器Koel(及马里奥游戏)

    Koel简介 Koel是一种简单的基于Web的个人音频流服务,用客户端的Vue和服务器端的Laravel编写.针对Web开发人员,Koel采用了一些更现代的Web技术来完成其工作 搭建步骤 docke ...

  9. JOISC2019 题解

    \(\text{By DaiRuiChen007}\) Contest Link A. Examination Problem Link 题目大意 有 \(n\) 个二元组 \((a,b)\) 和 \ ...

  10. neo4j配置文件neo4j.conf详解

    一.dbms配置 dbms.default_database=neo4j 目录路径 dbms.directories.data=datadbms.directories.plugins=plugins ...