ตัวกรอง

หากรายงานมีตัวกรองและปลั๊กอินจากชุมชนสำหรับใช้ลิงก์ข้อมูลแสดงข้อมูลที่ไม่ได้กรอง สำหรับช่องที่ขอทั้งหมด Looker Studio จะใช้ตัวกรองกับคำตอบของปลั๊กอิน อย่างไรก็ตาม คุณสามารถใช้ตัวกรองที่ระดับตัวเชื่อมต่อชุมชนได้ ซึ่งอาจช่วยปรับปรุงประสิทธิภาพได้อย่างมากในบางกรณี ระบบจะส่งข้อมูลตัวกรองในออบเจ็กต์คำขอ getData() และเครื่องมือเชื่อมต่อสามารถใช้ข้อมูลนี้เพื่อกรองข้อมูลก่อนส่งกลับไปยัง Looker Studio

เช่น หากคุณเชื่อมต่อกับฐานข้อมูล SQL การใช้ตัวกรองในคําสั่ง WHERE โดยตรง (B3 ในไดอะแกรมด้านล่าง) จะช่วยลดจํานวนแถวที่ส่งกลับไปยัง Looker Studio ได้อย่างมาก ซึ่งจะจำกัดปริมาณข้อมูลที่ต้องประมวลผลและส่งไปยัง Looker Studio (B5)

โฟลว์ชาร์ตตัวกรอง

กฎการใช้ตัวกรอง

  1. ใช้ตัวกรองทั้งหมด หรือไม่ใช้ตัวกรองใดเลย ดูตัวกรองที่ระบบไม่รองรับ
  2. อย่าใส่ช่อง forFilterOnly ในการตอบกลับ
  3. AND แต่ละรายการในอาร์เรย์ request.dimensionsFilters

    ตัวอย่างเช่น สำหรับตัวกรองต่อไปนี้ ตัวเชื่อมต่อควรมีเฉพาะค่าที่มี country เป็น USA AND มี source เป็น Social

    {
      "dimensionsFilters": [
        [{
          "fieldName": "country",
          "values": ["USA"],
          "type": "INCLUDE",
          "operator": "EQUALS"
        }],
        [{
          "fieldName": "source",
          "values": ["Social"],
          "type": "INCLUDE",
          "operator": "EQUALS"
        }]
      ]
    }
    
  4. OR แต่ละอาร์เรย์ย่อยในอาร์เรย์ request.dimensionsFilters

    ตัวอย่างเช่น สำหรับตัวกรองต่อไปนี้ เครื่องมือเชื่อมต่อควรมีเฉพาะค่าที่มี country เป็น USA หรือมี country เป็น Canada

    {
      "dimensionsFilters": [
        [{
          "fieldName": "country",
          "values": ["Canada"],
          "type": "INCLUDE",
          "operator": "EQUALS"
        }, {
          "fieldName": "country",
          "values": ["USA"],
          "type": "INCLUDE",
          "operator": "EQUALS"
        }]
      ]
    }
    

ตัวอย่าง

ตัวอย่างต่อไปนี้แสดงโฟลว์แบบครบวงจรตั้งแต่ผู้ใช้รายงาน กําหนดตัวกรองไปจนถึงตัวเชื่อมต่อชุมชนที่แสดงข้อมูลที่กรองแล้ว

ตัวอย่างตัวกรอง

  1. ผู้ใช้รายงานได้กำหนดค่าตัวกรอง 2 รายการ ดังนี้

    1. country คือ IN_LIST ของ Canada, USA
    2. source คือ IN_LIST ของ Social, Organic
  2. ผู้ใช้รายงานได้กําหนดค่าคอมโพเนนต์แผนภูมิด้วยมิติข้อมูล source และเมตริก sessions

  3. getData() จะดำเนินการโดย Looker Studio ด้วยออบเจ็กต์คำขอต่อไปนี้

    {
      "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"
        }]
      ]
    }
    
  4. เครื่องมือเชื่อมต่อจะตอบกลับด้วยข้อมูลที่กรองแล้ว

    สำหรับคำขอตัวอย่าง ให้ส่งคืน source และ sessions โดยที่ country เป็น "Canada" หรือ "USA" และ source เป็น "Social" หรือ "Organic" ตั้งค่า filtersApplied เป็น true เนื่องจากใช้ตัวกรองทั้งหมดได้ สำเร็จ

ข้อมูลต้นฉบับ

source เซสชัน country
โซเชียล 60 USA
โซเชียล 50 แคนาดา
โซเชียล 40 สหราชอาณาจักร
ออร์แกนิก 90 USA
ออร์แกนิก 80 แคนาดา
ออร์แกนิก 70 สหราชอาณาจักร
หนังสือพิมพ์ 30 USA
หนังสือพิมพ์ 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
}