แชร์ผ่าน


ค่า

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

เมื่อพารามิเตอร์ข้อมูลป้อนเข้าเป็นชื่อคอลัมน์ ระบบจะแสดงตารางแบบหนึ่งคอลัมน์ที่มีค่าซึ่งไม่ซ้ํากันจากคอลัมน์ที่ระบุ ค่าที่ซ้ํากันจะถูกลบออกและจะแสดงเฉพาะค่าที่ไม่ซ้ํากันเท่านั้น สามารถเพิ่มค่า BLANK ได้ เมื่อพารามิเตอร์ข้อมูลป้อนเข้าเป็นชื่อตาราง ระบบจะแสดงแถวจากตารางที่ระบุ แถวที่ซ้ํากันจะถูกรักษาไว้ สามารถเพิ่มแถว BLANK ได้

หมายเหตุ

ไม่สามารถใช้ฟังก์ชันนี้ในการส่งกลับค่าลงในเซลล์หรือคอลัมน์บนเวิร์กชีตได้ แต่คุณใช้เป็นฟังก์ชันระดับกลางที่ซ้อนกันในสูตรเพื่อรับรายการของค่าที่แตกต่างกันที่สามารถนับหรือใช้ในการกรองหรือรวมค่าอื่น ๆ ได้

ไวยากรณ์

VALUES(<TableNameOrColumnName>)  

พารามิเตอร์

เงื่อนไข คำนิยาม
TableName หรือ ColumnName คอลัมน์ที่ระบบแสดงค่าที่ไม่ซ้ํากัน หรือตารางที่ระบบแสดงแถว

ค่าที่ส่งกลับ

เมื่อพารามิเตอร์ข้อมูลป้อนเข้าเป็นชื่อคอลัมน์ จะเป็นตารางคอลัมน์เดียว เมื่อพารามิเตอร์ข้อมูลป้อนเข้าเป็นชื่อตาราง ระบบจะแสดงตารางคอลัมน์เดียวกัน

หมายเหตุ

  • เมื่อคุณใช้ฟังก์ชัน VALUES ในบริบทที่มีการกรอง ค่าที่ไม่ซ้ํากันซึ่งระบบแสดงจาก VALUES จะได้รับผลจากตัวกรองดังกล่าวด้วย ตัวอย่างเช่น หากคุณกรองตามภูมิภาค และแสดงรายการค่าสําหรับเมือง รายการจะรวมเฉพาะเมืองที่อยู่ในภูมิภาคดังกล่าวตามที่ตัวกรองอนุญาต หากต้องการแสดงเมืองทั้งหมด โดยไม่คํานึงถึงตัวกรองที่มีอยู่ คุณต้องใช้ฟังก์ชัน ALL เพื่อลบตัวกรองออกจากตาราง ตัวอย่างที่สองแสดงถึงการใช้ ALL กับ VALUES

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

  • สําหรับแนวทางปฏิบัติที่ดีที่สุดเมื่อใช้ VALUES ให้ดู ใช้ SELECTEDVALUE แทน VALUES

ในสถานการณ์ส่วนใหญ่ เมื่ออาร์กิวเมนต์เป็นชื่อคอลัมน์ ผลลัพธ์ของฟังก์ชัน VALUES จะเหมือนกับของฟังก์ชัน DISTINCT ทั้งสองฟังก์ชันจะลบรายการที่ซ้ํากันและแสดงรายการค่าที่เป็นไปได้ในคอลัมน์ที่ระบุ อย่างไรก็ตาม ฟังก์ชัน VALUES ยังสามารถแสดงค่าว่างได้ ค่าว่างนี้มีประโยชน์ในกรณีที่คุณกําลังมองหาค่าที่แตกต่างจากตารางที่เกี่ยวข้อง แต่ค่าที่ใช้ในความสัมพันธ์นี้จะขาดหายไปจากตารางหนึ่ง ในคําศัพท์ฐานข้อมูล นี่ถือเป็นการละเมิด Referential Integrity ความไม่ตรงกันดังกล่าวของข้อมูลอาจเกิดขึ้นได้เมื่อมีการอัปเดตตารางหนึ่งตารางและตารางที่เกี่ยวข้องไม่ได้รับการอัปเดต

เมื่ออาร์กิวเมนต์เป็นชื่อตาราง ผลลัพธ์ของฟังก์ชัน VALUES จะแสดงแถวทั้งหมดในตารางที่ระบุ รวมถึงแถวว่าง หากมีการละเมิด Referential Integrity ฟังก์ชัน DISTINCT จะลบแถวที่ซ้ํากันและแสดงแถวที่ไม่ซ้ํากันในตารางที่ระบุ

หมายเหตุ

ฟังก์ชัน DISTINCT อนุญาตให้ชื่อคอลัมน์หรือนิพจน์ตารางที่ถูกต้องใด ๆ เป็นอาร์กิวเมนต์ของฟังก์ชัน แต่ฟังก์ชัน VALUES จะยอมรับเฉพาะชื่อคอลัมน์หรือชื่อตารางเป็นอาร์กิวเมนต์เท่านั้น

ตารางต่อไปนี้สรุปความไม่ตรงกันระหว่างข้อมูลที่อาจเกิดขึ้นในตารางที่เกี่ยวข้องสองตารางเมื่อไม่มีการรักษา Referential Integrity

ตาราง MyOrders ตาราง MySales
วันที่ 1 มิถุนายน June 1 sales
วันที่ 2 มิถุนายน June 2 sales
(ไม่มีการป้อนวันที่สั่งซื้อ) June 3 sales

ถ้าคุณใช้ฟังก์ชัน DISTINCT เพื่อแสดงรายการวันที่ ระบบจะแสดงเฉพาะสองวันที่เท่านั้น อย่างไรก็ตาม หากคุณใช้ฟังก์ชัน VALUES ฟังก์ชันจะแสดงวันที่สองรายการรวมถึงสมาชิกว่างเพิ่มเติมด้วย นอกจากนี้ แถวใด ๆ จากตาราง MySales ที่ไม่มีวันที่ที่ตรงกันในตาราง MyOrders จะ "ตรงกัน" กับสมาชิกที่ไม่รู้จักนี้

ตัวอย่าง

สูตรต่อไปนี้จะนับจํานวนใบแจ้งหนี้ที่ไม่ซ้ํากัน (ใบสั่งขาย) และทําให้เกิดผลลัพธ์ต่อไปนี้เมื่อใช้รายงานที่รวมชื่อหมวดหมู่ผลิตภัณฑ์:

= COUNTROWS(VALUES('InternetSales_USD'[SalesOrderNumber]))  

การส่งคืน

ป้ายชื่อแถว นับใบแจ้งหนี้
อุปกรณ์ 18,208
จักรยาน 15,205
เสื้อผ้า 7,461
ผลรวมทั้งหมด 27,659

ฟังก์ชัน FILTER
ฟังก์ชัน COUNTROWS
ฟังก์ชันตัวกรอง