แชร์ผ่าน


ALLNOBLANKROW

นําไปใช้กับ: คอลัมน์จากการคํานวณตารางจากการคํานวณMeasureการคํานวณวิชวล

จากตารางหลักของความสัมพันธ์ แสดง all แถวแต่แถว blankorallvalues ที่แตกต่างกันของคอลัมน์ แต่แถว blankand ละเว้นบริบทใดก็ตาม filters ที่มีอยู่

วากยสัมพันธ์

ALLNOBLANKROW( {<table> | <column>[, <column>[, <column>[,…]]]} )

พารามิเตอร์

เทอม นิยาม
table ตารางที่ลบบริบท allfilters ออก
column คอลัมน์ที่นําบริบท allfilters ออก

ต้องส่งผ่านพารามิเตอร์เดียวเท่านั้น พารามิเตอร์ เป็นตาราง or คอลัมน์

value ผลลัพธ์

ตาราง เมื่อพารามิเตอร์ที่ส่งผ่านเป็นตาราง or คอลัมน์ของ valuesเมื่อพารามิเตอร์ที่ส่งผ่านเป็นคอลัมน์

หมาย เหตุ

  • ฟังก์ชัน ALLNOBLANKROW จะ filters เฉพาะแถว blank ที่ตารางหลักในความสัมพันธ์จะแสดงขึ้นเมื่อมีแถวในตารางย่อยที่มีแถวมากกว่า 1 or แถว values ซึ่งไม่ตรงกันกับคอลัมน์หลัก ดูตัวอย่างด้านล่างสําหรับคําอธิบายโดยละเอียด

  • ตารางต่อไปนี้สรุปการเปลี่ยนแปลงของ ALL ที่มีอยู่ใน DAXand ความแตกต่าง:

    การใช้งาน and ฟังก์ชัน คำอธิบาย
    ALL(Column) ลบ allfilters ออกจากคอลัมน์ที่ระบุในตาราง allfilters อื่น ๆ ในตาราง เหนือคอลัมน์อื่น ยังคงนําไปใช้
    ALL(Table) ลบ allfilters ออกจากตารางที่ระบุ
    ALLEXCEPT(Table,Col1,Col2...) แทนที่บริบท allfilters ในตาราง except เหนือคอลัมน์ที่ระบุ
    ALLNOBLANK(table|column) จากตารางหลักของความสัมพันธ์ แสดง all แถว แต่ blank แถว orallvalues ที่แตกต่างกันของคอลัมน์ แต่แถว blankand ละเว้นบริบทใดก็ตาม filters อาจมีอยู่

    สําหรับคําอธิบายทั่วไปเกี่ยวกับลักษณะการทํางานของฟังก์ชัน ALL พร้อมกับตัวอย่างแบบทีละขั้นตอนที่ใช ้ ALL(ตาราง) andALL(คอลัมน์) ดู ALL ฟังก์ชัน

  • ฟังก์ชันนี้ not ได้รับการสนับสนุนสําหรับการใช้งานในโหมด DirectQuery เมื่อใช้ในคอลัมน์จากการคํานวณ or กฎการรักษาความปลอดภัยระดับแถว (RLS)

ตัวอย่าง

ในข้อมูล sample ตาราง ResellerSales_USD contains หนึ่งแถวที่ไม่มี valuesand ดังนั้นจึงไม่สามารถ related ตารางหลักใด ๆ ในความสัมพันธ์ภายในสมุดงานได้ คุณจะใช้ตารางนี้ใน PivotTable เพื่อให้คุณสามารถดูลักษณะการทํางานของแถว blankand วิธีการจัดการการนับจํานวนในข้อมูลที่ไม่เกี่ยวข้อง

ขั้นตอนที่ 1: ตรวจสอบข้อมูลที่ไม่เกี่ยวข้อง

เปิด Pivot แล้วเลือกตาราง ResellerSales_USD ในคอลัมน์ ProductKey filter สําหรับ blankvalues หนึ่งแถวจะยังคงอยู่ ในแถวนั้น allvalues คอลัมน์ควร blankexcept สําหรับ SalesOrderLineNumber

ขั้นตอนที่ 2: สร้าง PivotTable

สร้าง PivotTable ใหม่ จากนั้นลากคอลัมน์ วันที่เวลา [CalendarYear] ไปยังบานหน้าต่าง ป้ายชื่อแถว ตารางต่อไปนี้แสดงผลลัพธ์ที่คาดไว้:

ป้ายชื่อแถว
2005
2006
2007
2008
ผลรวมทั้งหมด

โปรดสังเกตป้ายชื่อ blank ระหว่าง 2008andTotal ป้ายชื่อ blank นี้แสดงถึงสมาชิกที่ไม่รู้จัก ซึ่งเป็นกลุ่มพิเศษที่สร้างขึ้นในบัญชีสําหรับ values ใด ๆ ในตารางย่อยที่ไม่มี value ที่ตรงกันในตารางหลัก ในตัวอย่างนี้คือ datetime [CalendarYear] คอลัมน์

เมื่อคุณเห็นป้ายชื่อ blank นี้ใน PivotTable คุณจะทราบว่าในบางตารางที่ related ไปยังคอลัมน์ วันที่เวลา [CalendarYear] มี blankที่ไม่ตรงกัน valuesorvalues ตารางหลักคือตารางที่แสดงป้ายชื่อ blank แต่แถว not ตรงกันจะอยู่ในหนึ่ง or ตารางย่อยอีกหนึ่งตาราง

แถวที่เพิ่มลงในกลุ่มป้ายชื่อ blank นี้ values ทํา not ตรงกับ value ใด ๆ ในตารางหลัก-- ตัวอย่างเช่น datenot ที่มีอยู่ในตาราง datetime-- or null valuesซึ่งหมายความว่า ไม่มี value สําหรับ date ที่ all ในตัวอย่างนี้ เราได้วาง blankvalue ในคอลัมน์ all ของตารางยอดขายย่อย การมี values ในตารางหลักมากกว่าในตารางย่อย not ทําให้เกิดปัญหา

ขั้นตอนที่ 3: Count แถวโดยใช้ ALLand ALLNOBLANK

เพิ่มสองหน่วยวัดต่อไปนี้ลงในตาราง datetime เพื่อ count แถวตาราง: Countrows ALLNOBLANK ของวันที่เวลาCountrowsALL ของวันที่เวลา สูตรที่คุณสามารถใช้เพื่อ define หน่วยวัดเหล่านี้คือ:

// Countrows ALLNOBLANK of datetime
= COUNTROWS(ALLNOBLANKROW('DateTime'))

// Countrows ALL of datetime
= COUNTROWS(ALL('DateTime'))

// Countrows ALLNOBLANKROW of ResellerSales_USD
= COUNTROWS(ALLNOBLANKROW('ResellerSales_USD'))

// Countrows ALL of ResellerSales_USD
= COUNTROWS(ALL('ResellerSales_USD'))

บน PivotTable blank เพิ่ม วันที่เวลา [CalendarYear] คอลัมน์ไปยังป้ายชื่อแถว and จากนั้นเพิ่มหน่วยวัดที่สร้างขึ้นใหม่ ผลลัพธ์ควรมีลักษณะเหมือนกับตารางต่อไปนี้:

ป้ายชื่อแถว Countrows ALLNOBLANK ของวันที่เวลา Countrows ALL ของวันที่เวลา
2005 1280 1281
2006 1280 1281
2007 1280 1281
2008 1280 1281
1280 1281
ผลรวมทั้งหมด 1280 1281

ผลลัพธ์แสดงความแตกต่างของแถว 1 แถวในแถวตาราง count อย่างไรก็ตาม คุณเปิด Pivot เลือกตาราง datetime คุณไม่สามารถ แถว ใด ๆ ในตารางเนื่องจากแถว พิเศษที่กล่าวถึงที่นี่เป็นสมาชิกที่ไม่รู้จัก

ขั้นตอนที่ 4: ตรวจสอบว่า count ถูกต้อง

เพื่อพิสูจน์ว่า ALLNOBLANKROW ทํา notcount แถว blank อย่างแท้จริง and จัดการเฉพาะแถว blank พิเศษในตารางหลักเท่านั้น ให้เพิ่มหน่วยวัดสองรายการต่อไปนี้ลงในตาราง ResellerSales_USD: CountrowsALLNOBLANKROW ของ ResellerSales_USDCountrowsALL ของ ResellerSales_USD

สร้าง PivotTable ใหม่ and ลากคอลัมน์ วันที่เวลา [CalendarYear] ไปยังบานหน้าต่าง ป้ายชื่อแถว Now เพิ่มหน่วยวัดที่คุณเพิ่งสร้างขึ้น ผลลัพธ์ควรมีลักษณะดังต่อไปนี้:

ป้ายชื่อแถว Countrows ALLNOBLANKROW ของ ResellerSales_USD Countrows ALL ของ ResellerSales_USD
2005 60856 60856
2006 60856 60856
2007 60856 60856
2008 60856 60856
60856 60856
ผลรวมทั้งหมด 60856 60856

Now หน่วยวัดทั้งสองมีผลลัพธ์เดียวกัน นั่นเป็นเพราะว่าฟังก์ชัน ALLNOBLANKROWnotcountblank แถวในตารางอย่างแท้จริง แต่จะจัดการเฉพาะแถว blank ที่เป็นกรณีพิเศษที่สร้างขึ้นในตารางหลัก เมื่อ or ตารางย่อยในความสัมพันธ์ที่มี valuesorblankvaluesที่ไม่ตรงกัน

ฟังก์ชัน FilterALL ฟังก์ชันFILTER ฟังก์ชัน