ตัวอย่างที่ 1: ใช้กับ List.Contains ค้นหาสถานะ
=List.Contains({"Active", "Inactive", "Pending"}, "active", Comparer.OrdinalIgnoreCase)
true
ฟังก์ชันเปรียบเทียบแบบไม่สนใจตัวพิมพ์เล็ก/ใหญ่
Comparer.OrdinalIgnoreCase เป็นฟังก์ชันที่คืนค่าเป็น ‘Function’ ซึ่งใช้ในการเปรียบเทียบค่า 2 ค่า โดยจะถือว่า “A” และ “a” เท่ากัน (return 0) ใช้เป็น Argument สุดท้ายในหลายๆ ฟังก์ชัน เช่น List.Contains, Text.Contains, Table.Distinct
=Comparer.OrdinalIgnoreCase(x as any, y as any) as number
=Comparer.OrdinalIgnoreCase(x as any, y as any) as number
| Argument | Type | Required | Default | Description |
|---|---|---|---|---|
| x | any | Yes | ค่าแรกที่ต้องการเปรียบเทียบ | |
| y | any | Yes | ค่าที่สองที่ต้องการเปรียบเทียบ |
ใช้กับ List.Contains หรือ Text.Contains เพื่อให้หาเจอไม่ว่าจะพิมพ์เล็กหรือใหญ่
ใช้กับ Table.Distinct หรือ List.Distinct เพื่อมองว่า "Apple" กับ "apple" คือค่าซ้ำกัน
ใช้ในการ Merge Queries เพื่อให้ Key ที่เป็นตัวพิมพ์ต่างกันสามารถจับคู่กันได้
=List.Contains({"Active", "Inactive", "Pending"}, "active", Comparer.OrdinalIgnoreCase)
true
=List.Distinct({"Apple", "apple", "APPLE", "Banana"}, Comparer.OrdinalIgnoreCase)
{"Apple", "Banana"}
=Comparer.OrdinalIgnoreCase("APPLE", "apple")
Comparer.Ordinal สนใจตัวพิมพ์เล็ก/ใหญ่ (Case Sensitive) ดังนั้น “A” ไม่เท่ากับ “a” ส่วน Comparer.OrdinalIgnoreCase ไม่สนใจ (Case Insensitive)
ฟังก์ชัน Comparer.OrdinalIgnoreCase ใน Power Query ใช้สำหรับสร้างตัวเปรียบเทียบ (Comparer) ที่ไม่สนใจความแตกต่างของตัวพิมพ์เล็กและตัวพิมพ์ใหญ่ (Case Insensitive) มักใช้ร่วมกับฟังก์ชันอื่นๆ ที่มีการเปรียบเทียบหรือค้นหาข้อความ