一、數據術語
維度——包含諸如文本和日期等類別數據的字段。
度量——包含可以聚合的數字的字段。
二、字段圖標
Abc 藍色圖標->離散字段
# 綠色圖標->連續字段
=Abc =前綴圖標->自定義計算字段
#! 無效字段
三、數據類型
四、運算符優先級
優先級 | 運算符 |
1 | - (求反) |
2 | ^ (乘方) |
3 | *, /, % |
4 | +, - |
5 | ==, >, <, >=, <=, != |
6 | NOT |
7 | AND |
8 | OR |
五、數字函數
1.ROUND(number,[decimals]) 將數字舍入為指定位數。decimals參數指定為結果中小數位數,不是必需的。若省略decimals,則number舍入為最接近的整數。
ROUND(7.3)=7 ROUND(-6.9)=-7 ROUND(123.47,1)=123.5
2.MAX(number,number) 返回兩個參數(必須為相同類型)中的較大值。如果任一參數為Null,則返回Null。
3.MIN(number,number) 返回兩個參數(必須為相同類型)中的較小值。
六、字符串函數
1.Contains(string,substring) 如果給定字符串包含指定子字符串,則返回true.
Contains("Calculation","alcu")=true
2.FIND(string,substring,[start])
返回substring在string中的索引位置,如果找不到substring,則返回0。如果添加了可選參數start,則函數會執行想用操作,但是會忽略在索引位置start之前出現的任何substring實例。字符串中的第一個字符位置為1。
FIND("Calculation","alcu")=2 FIND("Calculation","a",3)=7
3.LEFT(string,number) 返回字符串最左側一定數量的字符。
LEFT("Matador",4)="Mata"
4.RIGHT(string,number) 返回字符串最右側一定數量的字符
5.MID(string,start,[length]) 返回從索引位置start開始的字符串。字符串第一個字符的位置為1。如果添加可選參數length,則返回的字符串僅包含該數量的字符。
MID("Calculation",2,5)="alcul"
6.REPLACE(string,substring,repalcement) 在提供的字符串中搜素給定子字符串並將其替換為替換字符串。如果未找到子字符串,則字符串保持不變。
REPLACE("Version8.5","8.5","9.0")="Version9.0"
7.LEN(string) 返回字符串長度。LEN("Matador")=7
8.TRIM(string) LTRIM(string) RTRIM(string) 返回移除了前導和尾隨空格的字符串
TRIM(" Calculation ")="Calculation"
9.UPPER(string) LOWER(string) 返回字符串的小寫形式;返回字符串的大寫形式。
七、日期函數
1.TODAY() 返回當前日期 TODAY()="2/23/2016"
2.NOW() 返回當前日期和時間 NOW()="2/23/2016 11:02:21 AM"
3.YEAR(date) 以整數的形式返回給定日期的年份 YEAR(#April 12,2005#)=2005
4.MONTH(date) 以整數的形式返回給定日期的月份 MONTH((#April 12,2005#)=4
5.DAY(date) 以整數的形式返回給定日期的天 DAY(#April 12,2005#)=12
6.ISDATE(string) 如果給定字符串為有效日期,則返回true。 ISDATE("April 15,2004")==true
7.DATEPART(date_part,date) 以整數的形式返回date的date_part。
DATEPART('year',#April 15,2004#)=2004
8.DATEADD(date_part,increment,date) 返回increment與date相加的結果。
DATEADD('month',3,#April 15,2004#)=#July 15,2004#
9.DATEDIFF(date_part,date1,date2) 返回date1與date2之差(以date_part的單位表示)。
DATEDIFF('month',#July 15,2004#,,#April 15,2004#)=-3
10.DATERUNC(date_part,date) 按date_part指定的准確度階段指定日期。此函數返回新日期。
DATERUNC('quarter',#August 15,2005#)=July 1,2005
DATERUNC('month',#April 15,2005#)=April 1,2005
八、邏輯函數
1.IIF(test,then,else) IFF函數用於執行邏輯測試並返回合適值。IIF函數的第一個參數必須為布爾值。如果測試計算為TRUE,則此函數返回then;如果測試計算為FALSE,則此函數返回else。
2.IF test THEN value ELSE else END
3.IF test THEN value END
4.IF test1 THEN value1 ELSEIF test2 THEN value2 ELSE else END
5.CASE expression WHEN value1 THEN return1 WHEN value2 THEN return2...ELSE default return END
如果不存在默認返回表達式並且沒有任何值匹配,則會返回Null。
6.ISNULL(expression) 如果表達式為Null,則返回TRUE;否則返回FALSE。
7.IFNULL(expression1,expression2) 如果結果不為null,則返回第一個表達式,否則返回第二個表達式。
如果IFNULL([Proft],0)=[Proft]不為空,則返回它,否則返回0
九、聚合函數
1.AVG(expression) 返回表達式中所有值的平均值。AVG只能用於數字字段,會忽略Null值。
2.COUNT(expression) 返回組中的項目數。Null值不計數
3.COUNTD(expression) 返回組中不同項目的數量。Null值不計數。如果連接到MS Excel、MS Access或文本文件,則此函數不可用,可將數據提取到數據提取文件以獲得此功能。
4.MAX(expression)、MEDIAM、MIN 返回表達式中所有記錄中的最大值。如果表達式為字符串值,則此函數返回按字母順序定義的最后一個值。
中位數,只能用於數字字段,將忽略控制,如果連接到MS Excel、MS Access或文本文件,則此函數不可用。
5.SUM(expression) 返回表達式中所有值的總計。SUM只能用於數字字段。會忽略Null值。