คุณสามารถส่งการค้นหาสำหรับช่องเมตริกและกลุ่มไปยังเมธอด reports.search
ได้ ในการสร้างการค้นหาในภาษาการค้นหาของ Merchant Center คุณต้องเขียนการค้นหาโดยใช้ไวยากรณ์ภาษาก่อน โดยการค้นหาประกอบด้วยข้อความต่างๆ ดังนี้
SELECT
FROM
WHERE
ORDER BY
LIMIT
วรรคจะใช้ชื่อช่อง ชื่อตาราง โอเปอเรเตอร์ เงื่อนไข และลำดับเพื่อช่วยคุณเลือกข้อมูลที่ต้องการ เมื่อรวมเป็นคำค้นหาเดียวแล้ว คุณจะส่งคำขอโดยใช้ Google Content API for Shopping ได้ เรามาดูวิธีใช้ แต่ละวลีกัน
ข้อย่อย
SELECT
วรรค SELECT
จะระบุชุดของช่องที่จะดึงข้อมูลในคำขอ SELECT
ใช้รายการช่องและเมตริกที่คั่นด้วยคอมมา แล้วแสดงผลค่าในการตอบกลับ คุณต้องต้องระบุอนุประโยค SELECT
ในการค้นหา
ต่อไปนี้คือตัวอย่างคำค้นหาที่เลือกเมตริกการคลิกจากตารางหนึ่งๆ
SELECT
metrics.clicks
FROM MerchantPerformanceView
WHERE segments.date BETWEEN ‘2020-08-01’ AND ‘2020-08-31’
นอกจากนี้ คุณยังค้นหาช่องประเภทต่างๆ ได้ในคำขอเดียวดังนี้
SELECT
segments.date,
segments.program,
metrics.impressions,
metrics.clicks
FROM MerchantPerformanceView
WHERE segments.date BETWEEN ‘2020-08-01’ AND ‘2020-08-31’
ช่องกลุ่ม
segments.date
segments.program
เมตริก
metrics.impressions
metrics.clicks
ช่องบางช่องไม่ได้รับอนุญาตในวรรค SELECT
เนื่องจากข้อจำกัดต่อไปนี้
- การค้นหาช่องกลุ่มโดยไม่มีช่องเมตริกอย่างน้อย 1 ช่อง
สามารถดูข้อมูลที่เกี่ยวข้องกับเงื่อนไขข้างต้นได้ในเอกสารอ้างอิง
จาก
วรรค FROM
จะระบุตารางที่จะดึงข้อมูลในคำขอ ตารางในอนุประโยค FROM
จะกำหนดช่องที่สามารถใช้เงื่อนไขอื่นๆ ทั้งหมดสำหรับการค้นหาที่ระบุ ระบุตารางในอนุประโยค FROM
ได้เพียงตารางเดียวเท่านั้น ปัจจุบันรองรับเฉพาะตาราง MerchantPerformanceView เท่านั้น
คุณต้องต้องระบุอนุประโยค FROM
ในการค้นหาเมธอด search
ในบริการ reports
ที่ไหน
วรรค WHERE
จะระบุเงื่อนไขที่จะนำไปใช้เมื่อกรองข้อมูลสำหรับคําขอ เมื่อใช้วรรค WHERE
คุณจะระบุเงื่อนไขอย่างน้อย 1 ข้อได้โดยใช้ AND
เพื่อแยกเงื่อนไข แต่ละเงื่อนไขควรเป็นไปตามรูปแบบ field_name Operator value
คุณจะใช้ช่องกลุ่มในวรรค WHERE
ได้ แต่ต้องระบุช่องเมตริกในวรรค SELECT
เพื่อใช้ในวรรค WHERE
คุณต้องระบุอนุประโยค WHERE
ในการค้นหาเนื่องจากคุณต้องระบุช่วงวันที่เสมอว่าต้องการแสดงข้อมูลประสิทธิภาพเมื่อใด
ตัวอย่างต่อไปนี้เป็นตัวอย่างของการใช้ WHERE
เพื่อแสดงเมตริกจากระยะเวลาหนึ่งๆ
SELECT
segments.offer_id,
metrics.impressions
FROM MerchantPerformanceView
WHERE segments.date BETWEEN ‘2020-08-01’ AND ‘2020-08-31’
คุณรวมเงื่อนไขหลายรายการเพื่อกรองข้อมูลได้ ตัวอย่างนี้จะแสดง จำนวนคลิกต่อข้อเสนอสำหรับโปรแกรม SHOPPING_ADS ที่มีจำนวนคลิกมากกว่า 100 ครั้งภายในระยะเวลา 30 วันที่กำหนด
SELECT
segments.offer_id,
segments.program,
metrics.clicks
FROM MerchantPerformanceView
WHERE metrics.clicks > 100
AND segments.program = SHOPPING_ADS
AND segments.date BETWEEN ‘2020-08-01’ AND ‘2020-08-31’;
ในการค้นหาต่อไปนี้ คุณจะเห็นว่ามีการเลือก segments.date
ไม่ว่าคุณจะเลือก segments.date
หรือไม่ก็ตาม คุณจะต้องระบุช่วงวันที่ที่แน่นอนในวรรค WHERE
เสมอเพื่อดึงข้อมูลประสิทธิภาพ
SELECT
segments.date,
metrics.clicks
FROM MerchantPerformanceView
WHERE segments.date BETWEEN ‘2020-08-01’ AND ‘2020-08-31’
คุณต้องคำนึงถึงตัวพิมพ์เล็กและตัวพิมพ์ใหญ่เมื่อกรองด้วย
ดูรายการโอเปอเรเตอร์ทั้งหมดได้ที่ไวยากรณ์ภาษา
ORDER BY
วรรค ORDER BY
จะระบุลำดับการแสดงผลลัพธ์ วิธีนี้ช่วยให้คุณจัดเรียงข้อมูลตามลำดับจากน้อยไปมากหรือมากไปน้อยตามชื่อช่องได้ แต่ละลำดับจะระบุเป็น field_name
ตามด้วย ASC
หรือ DESC
หากไม่ได้ระบุ ASC
หรือ DESC
คำสั่งซื้อจะมีค่าเริ่มต้นเป็น ASC
มีเฉพาะช่องที่ระบุไว้ในอนุประโยค SELECT
เท่านั้นที่จะใช้ในวรรค ORDER BY
ได้ อนุประโยค ORDER BY
เป็นเงื่อนไขที่ไม่บังคับในการค้นหา
คำค้นหาต่อไปนี้จะจัดเรียงแถวที่แสดงผลตามจำนวนคลิกจากสูงสุดไปต่ำสุด
SELECT
segments.offer_id,
metrics.clicks
FROM MerchantPerformanceView
WHERE segments.date BETWEEN ‘2020-08-01’ AND ‘2020-08-31’
ORDER BY metrics.clicks DESC
คุณสามารถระบุหลายช่องในอนุประโยค ORDER BY
โดยใช้รายการที่คั่นด้วยคอมมา การจัดลำดับจะเกิดขึ้นในลำดับเดียวกับที่ระบุในคำค้นหา
ตัวอย่างเช่น ในการค้นหานี้ ผลลัพธ์จะจัดเรียงจากน้อยไปหามากตาม offer_id
จากนั้นเรียงลำดับจากมากไปหาน้อยตามจำนวนการแสดงผล จากนั้นเรียงจากมากไปหาน้อยตามจำนวนคลิก
SELECT
segments.offer_id,
metrics.impressions,
metrics.clicks
FROM MerchantPerformanceView
WHERE segments.date BETWEEN ‘2020-08-01’ AND ‘2020-08-31’
ORDER BY
segments.offer_id,
metrics.impressions DESC,
metrics.clicks DESC
ขีดจำกัด
วรรค LIMIT
ช่วยให้คุณระบุจำนวนผลลัพธ์ที่จะส่งคืน
วิธีนี้เป็นประโยชน์ในกรณีที่คุณสนใจเฉพาะข้อมูลสรุป
เช่น คุณจะใช้ LIMIT
เพื่อจำกัดจำนวนผลการค้นหาทั้งหมดสำหรับคำค้นหาต่อไปนี้ได้
SELECT
segments.program,
segments.offer_id,
metrics.impressions
FROM MerchantPerformanceView
WHERE segments.date BETWEEN ‘2020-08-01’ AND ‘2020-08-31’
ORDER BY metrics.impressions DESC
LIMIT 50