หากรายงานมีตัวกรองและเครื่องมือเชื่อมต่อชุมชนแสดงผลข้อมูลที่ไม่มีการกรองสำหรับทุกช่องที่ขอ Looker Studio จะใช้ตัวกรองกับการตอบกลับเครื่องมือเชื่อมต่อ อย่างไรก็ตาม ตัวกรองสามารถนำไปใช้ได้ในระดับปลั๊กอินจากชุมชนสำหรับใช้ลิงก์ข้อมูล ซึ่งจะช่วยปรับปรุงประสิทธิภาพได้อย่างมากในบางกรณี ระบบจะส่งข้อมูลตัวกรองในออบเจ็กต์คำขอ getData() และเครื่องมือเชื่อมต่อจะใช้ข้อมูลนี้เพื่อกรองข้อมูลก่อนที่จะส่งกลับไปยัง Looker Studio
เช่น หากคุณเชื่อมต่อกับฐานข้อมูล SQL การใช้ตัวกรองโดยตรงในอนุประโยค WHERE
(B3 ในแผนภาพด้านล่าง) อาจลดจำนวนแถวที่ส่งไปยัง Looker Studio ได้อย่างมาก ซึ่งจะจำกัดปริมาณข้อมูลที่ต้องประมวลผลและส่งไปยัง Looker Studio (B5)
กฎในการใช้ตัวกรอง
- ใช้ตัวกรองทั้งหมด หรือไม่เลือกเลย ดูตัวกรองที่ไม่รองรับ
- อย่าใส่ช่อง
forFilterOnly
ในคำตอบ AND
กับแต่ละรายการในอาร์เรย์request.dimensionsFilters
เช่น สำหรับตัวกรองต่อไปนี้ เครื่องมือเชื่อมต่อควรรวมเฉพาะค่าที่มี
country
เป็นUSA
ANDsource
เป็นSocial
{ "dimensionsFilters": [ [{ "fieldName": "country", "values": ["USA"], "type": "INCLUDE", "operator": "EQUALS" }], [{ "fieldName": "source", "values": ["Social"], "type": "INCLUDE", "operator": "EQUALS" }] ] }
OR
รวมแต่ละอาร์เรย์ย่อยในอาร์เรย์request.dimensionsFilters
เช่น สำหรับตัวกรองต่อไปนี้ เครื่องมือเชื่อมต่อควรรวมเฉพาะค่าที่มี
country
เป็นUSA
หรือcountry
เป็นCanada
{ "dimensionsFilters": [ [{ "fieldName": "country", "values": ["Canada"], "type": "INCLUDE", "operator": "EQUALS" }, { "fieldName": "country", "values": ["USA"], "type": "INCLUDE", "operator": "EQUALS" }] ] }
ตัวอย่าง
ตัวอย่างต่อไปนี้แสดงขั้นตอนตั้งแต่ต้นจนจบจากผู้ใช้รายงานที่ผู้ใช้กำหนดตัวกรองไปยังปลั๊กอินจากชุมชนสำหรับใช้ลิงก์ข้อมูลที่แสดงผลข้อมูลที่กรอง
ผู้ใช้รายงานได้กำหนดค่าตัวกรอง 2 รายการดังนี้
country
เป็นIN_LIST
จากCanada, USA
source
เป็นIN_LIST
จากSocial, Organic
ผู้ใช้รายงานได้กำหนดค่าองค์ประกอบแผนภูมิที่มีมิติข้อมูล
source
และเมตริกsessions
Looker Studio จะเรียกใช้
getData()
โดยมีออบเจ็กต์คำขอต่อไปนี้{ "fields": [ {"name": "source"}, {"name": "sessions"}, {"name": "country", "forFilterOnly": true} ], "dimensionsFilters": [ [{ "fieldName": "country", "values": ["Canada", "USA"], "type": "INCLUDE", "operator": "IN_LIST" }], [{ "fieldName": "source", "values": ["Social", "Organic"], "type": "INCLUDE", "operator": "IN_LIST" }] ] }
เครื่องมือเชื่อมต่อจะตอบสนองด้วยข้อมูลที่กรองแล้ว
สำหรับคำขอตัวอย่าง ให้แสดงผล
source
และsessions
โดยที่country
เป็น"Canada"
หรือ"USA"
และsource
เป็น"Social"
หรือ"Organic"
โปรดตั้งค่าfiltersApplied
เป็นtrue
เนื่องจากใช้ตัวกรองทั้งหมดได้สำเร็จ
ข้อมูลเดิม
source | เซสชัน | country |
---|---|---|
โซเชียล | 60 | สหรัฐอเมริกา |
โซเชียล | 50 | แคนาดา |
โซเชียล | 40 | สหราชอาณาจักร |
ออร์แกนิก | 90 | สหรัฐอเมริกา |
ออร์แกนิก | 80 | แคนาดา |
ออร์แกนิก | 70 | สหราชอาณาจักร |
หนังสือพิมพ์ | 30 | สหรัฐอเมริกา |
หนังสือพิมพ์ | 20 | แคนาดา |
หนังสือพิมพ์ | 10 | สหราชอาณาจักร |
ข้อมูลที่กรองแล้ว
source | เซสชัน |
---|---|
โซเชียล | 60 |
โซเชียล | 50 |
ออร์แกนิก | 90 |
ออร์แกนิก | 80 |
การตอบกลับ getData()
รายการ
{
"schema": [
{"name": "source", "dataType": "STRING"},
{"name": "sessions", "dataType": "NUMBER"},
],
"rows": [
{"values": ["Social", 60]},
{"values": ["Social", 50]},
{"values": ["Organic", 90]},
{"values": ["Organic", 80]}
],
"filtersApplied": true
}
ตัวกรองที่ไม่รองรับ
หากเครื่องมือเชื่อมต่อใช้ตัวกรองทั้งหมดในคำขอไม่ได้ ก็ไม่ควรมีการกรองใดๆ แสดงผลช่องที่ขอทั้งหมด (รวมถึงช่อง forFilterOnly
) และตั้งค่าคีย์ filtersApplied
ในการตอบกลับเป็น false
ตัวอย่าง
{
"schema": [
{"name": "source", "dataType": "STRING"},
{"name": "sessions", "dataType": "NUMBER"},
{"name": "country", "dataType": "STRING"}
],
"rows": [
{"values": ["Social", 60, "USA"]},
{"values": ["Social", 50, "Canada"]},
{"values": ["Social", 40, "UK"]},
{"values": ["Organic", 90, "USA"]},
{"values": ["Organic", 80, "Canada"]},
{"values": ["Organic", 70, "UK"]},
{"values": ["Newspaper", 30, "USA"]},
{"values": ["Newspaper", 20, "Canada"]},
{"values": ["Newspaper", 10, "UK"]},
],
"filtersApplied": false
}