การใช้ ShopifyQL ในตระก
ShopifyQL คือภาษาชุดข้อความค้นหาของ Shopify ที่สร้างขึ้นเพื่อการค้า ภาษาที่ใช้ในการค้นหาจะใช้ในการร้องขอและกู้คืนข้อมูลจากฐานข้อมูล คุณสามารถใช้ShopifyQLร่วมกับแอป Notebooks ของ Shopify เพื่อสำรวจดูฐานข้อมูลของธุรกิจคุณ และกู้คืนข้อมูลที่ช่วยให้คุณเข้าใจธุรกิจของคุณในเชิงลึกมากขึ้น
หากต้องการดูรายการค่าและขนาดทั้งหมดที่สามารถใช้งานได้ในคิวรี ShopifyQL Notebook โปรดดูที่โครงร่างคำสั่งซื้อและโครงร่างสินค้า
ภาพรวมของ ShopifyQL
ข้อมูลของร้านค้าคุณจะถูกเก็บไว้ในตารางฐานข้อมูล มีโครงสร้างในคอลัมน์และแถวที่กําหนดไว้ คอลัมน์จะกําหนดประเภทของข้อมูลที่มี เช่น ยอดขาย และแถวจะระบุค่าจริงของประเภทข้อมูล เช่น ยอดขาย 2,450 ดอลลาร์สหรัฐ
หากต้องการกู้คืนข้อมูลของคุณในรูปแบบที่มีความหมาย จะต้องส่งการสอบถามไปยังฐานข้อมูล คําถามคือคําถามที่ขอข้อมูลเฉพาะในฐานะคําตอบ ภาษาคําถาม เช่น ShopifyQL เป็นวิธีการสร้างคําถามแบบมาตรฐาน คําค้นหาสร้างขึ้นจากคําหลักและพารามิเตอร์ที่สอดคล้องกัน การรวมคําค้นหาหลายคํากับพารามิเตอร์เฉพาะจะสร้างคําค้นหาของคุณ หลังจากที่คุณสร้างคําค้นหาแล้ว คุณจะสามารถค้นหาและรับคําตอบได้
นี่คือตัวอย่างของไวยากรณ์ของ ShopifyQL ที่เขียนเป็นแบบสอบถาม คําคําคําเป็นตัวหนาพารามิเตอร์ที่สอดคล้องกันของพวกเขาอยู่ในวงเล็บ พารามิเตอร์ที่แสดงที่นี่เป็นตัวยึด:
อภิธานศัพท์
ข้อกำหนด | ความหมาย |
---|---|
ขนาด | คุณลักษณะที่แบ่งกลุ่มข้อมูลเพื่อให้จัดเรียงและนําเสนอได้ชัดเจนมากขึ้น ตัวอย่างทั่วไปของขนาดได้แก่ เวลา สินค้า และสถานที่ ขนาดจะถูกใช้เป็นพารามิเตอร์ใน ShopifyQL |
คำสำคัญ | ไวยากรณ์ของ ShopifyQL ที่กระจัดกระจายเป็นข้อความสั่งเพื่อส่งการสอบถามของคุณโดยตรง |
ตัวชี้วัด | การวัดข้อมูลเป็นปริมาณ ตัวอย่างทั่วไปของเกณฑ์ชี้วัดได้แก่ ยอดขายรวม จํานวนของคำสั่งซื้อ และกําไรขั้นต้น |
พารามิเตอร์ | ไวยากรณ์ของ ShopifyQL ที่ระบุองค์ประกอบของฐานข้อมูลหรือรายละเอียดที่จะรวมอยู่ในแบบสอบถามของคุณ |
ตารางอ้างอิงของคีย์เวิร์ด
คําหลักเหล่านี้คือคําค้นหาที่คุณสามารถใช้เขียนคําค้นหาได้:
คำสำคัญ | การใช้งานตามการใช้งาน |
---|---|
จาก | ระบุว่าตารางชุดข้อมูลใดเพื่อเลือกข้อมูล |
แสดง | เลือกคอลัมน์ที่คุณต้องการแยกจากตารางชุดข้อมูล |
แสดงภาพ | แสดงข้อมูลของคุณบนเส้นหรือแถบการแสดงภาพ |
จัดกลุ่มตาม | จัดกลุ่มข้อมูลที่แยกออกมาตามขนาดมิติหรือเวลา |
WHERE | กําหนดเงื่อนไขหรือเงื่อนไขที่ต้องเลือกแถว |
ตั้งแต่ | แสดงข้อมูลตั้งแต่ช่วงเวลาในอดีตที่กำหนด |
จน กว่า | แสดงข้อมูลจนถึงวันที่ระบุในอดีต |
DURING | แสดงข้อมูลตั้งแต่ช่วงเวลาในอดีตที่กำหนด |
COMPARE TO | แสดงข้อมูลจนถึงวันที่ระบุในอดีต |
สั่งซื้อโดย | ระบุคอลัมน์ที่จะสั่งซื้อข้อมูล |
จำกัด | จํากัดจํานวนแถวของข้อมูลที่จะแสดง |
เป็น | เปลี่ยนชื่อคอลัมน์เป็นชื่อที่คุณเลือก |
การเขียนการสอบถามของ ShopifyQL
การสอบถามของ ShopifyQL สามารถแบ่งช่วงได้จากส่วนพื้นฐาน ข้อมูลเชิงลึกของข้อมูลระดับสูง และแบบครอบคลุม เพื่อดูรายละเอียดข้อมูลเชิงลึก แต่ละคีย์เวิร์ดมีฟังก์ชันเฉพาะที่สร้างจากการสอบถามของคุณ
ข้อมูลเบื้องต้นเกี่ยวกับ ShopifyQL: จากและแสดง
การสร้างคําค้นหา ShopifyQL ที่ง่ายที่สุดต้องใช้คําค้นหาสองคําเท่านั้น: จากและแสดง ซึ่งเขียนไว้ในคําสั่งซื้อนั้น จาก ตามด้วยพารามิเตอร์ชื่อตารางจะระบุว่าตารางใดที่คุณต้องการสอบถาม แสดง ตามด้วยพารามิเตอร์ชื่อคอลัมน์จะระบุคอลัมน์ที่คุณต้องการเลือก
ตัวอย่างเช่น คุณสามารถแสดงรายการรหัสสินค้าทั้งหมดและชื่อที่สอดคล้องกันจากตารางการขายได้โดยเขียนชุดข้อความนี้:
การจัดกลุ่มข้อมูล: จัดกลุ่มตาม
หากต้องการแบ่งเกณฑ์ชี้วัดตามขอบเขตเช่น รวมยอดขายเป็นกลุ่มตามภูมิภาค ให้ใช้คีย์เวิร์ด GROUP BY โดยคุณสามารถจับคู่คีย์เวิร์ด GROUP BY กับพารามิเตอร์เกี่ยวกับขอบเขตพารามิเตอร์ใดก็ได้
ตัวอย่างเช่น คำค้นหาที่จัดกลุ่มค่าจัดส่งรวมตามประเทศและภูมิภาคสำหรับเรียกเก็บเงินจะเขียนไว้ ดังนี้:
นี่คือตัวอย่างคำค้นหาที่ใช้ขอบเขตด้านเวลาเพื่อแสดงยอดขายสุทธิตามเดือน:
คำค้นหาข้างต้นไม่แสดงผลเดือนที่คุณไม่มียอดขาย หากคุณต้องการให้คำค้นหาแสดงช่วงเวลาทั้งหมดแบบไม่ขาดตอน ให้ใช้ตัวแก้ไข ALL:
เมื่อคุณใช้ตัวแก้ไข ALL คุณจะต้องระบุSINCE่และUNTILด้วย หมายเหตุ ตัวแก้ไข ALL จะใช้ได้กับขอบเขตด้านเวลาเท่านั้น
ขนาดเวลา
นี่คือขนาดเวลาที่คุณสามารถใช้เพื่อจัดกลุ่มข้อมูลได้:
ตัวดำเนินการ | การใช้งานตามการใช้งาน |
---|---|
ชั่วโมง | การจัดกลุ่มตามชั่วโมงของวันตามปฏิทิน |
วัน | จัดกลุ่มตามวันที่ในปฏิทิน |
สัปดาห์ | จัดกลุ่มตามสัปดาห์ในปฏิทิน |
เดือน | การจัดกลุ่มตามเดือนปฏิทิน |
ไตรมาส | การจัดกลุ่มตามไตรมาสในปฏิทิน |
ปี | การจัดกลุ่มตามปีปฏิทิน |
hour_of_day | จัดกลุ่มตาม 24 ชั่วโมง (1,2,...,24) |
day_of_week | การจัดกลุ่มตามวันในสัปดาห์ (M,T,W,...,S) |
week_of_year | การจัดกลุ่มตามสัปดาห์ของปี (1,2,...,52) |
การกรองข้อมูล: WHERE
คีย์เวิร์ด WHERE ช่วยให้คุณสามารถใช้ตัวกรองมิติกับการสอบถามทั้งหมดบน ShopifyQL ได้
ตัวอย่างเช่น หากคุณต้องการคืนยอดขายสุทธิแบบแบ่งกลุ่มตามเดือน แต่คืนเฉพาะบางภูมิภาค คำค้นหาของคุณคือ:
อย่างที่คุณเห็นในตัวอย่างข้างต้น คุณสามารถกรองผลลัพธ์ที่ตั้งค่าด้วยพารามิเตอร์ WHERE ได้แม้ว่าจะไม่ได้รวมพารามิเตอร์ดังกล่าวไว้ในคำสำคัญ SHOW หรือ GROUP BY โดยในกรณีนี้ ระบบจะกรองหายอดขายสุทธิในทุกเดือนสำหรับคำสั่งซื้อที่มีที่อยู่สำหรับเรียกเก็บเงินในโอไฮโอเท่านั้น แม้ว่า billing_region จะไม่ได้รวมอยู่ในชุดผลลัพธ์ก็ตาม
ผู้ประกอบการเปรียบเทียบ
คีย์เวิร์ด WHERE ใช้ตัวประกอบการเปรียบเทียบในการกรองข้อมูล ในตัวอย่างด้านบน '=' ถูกใช้เพื่อระบุว่าตัวกรองการสอบถามบนค่าใดค่าหนึ่ง อย่างไรก็ตาม มีโอเรเตอร์อื่นๆ ให้บริการคุณ:
ตัวดำเนินการเปรียบเทียบ | การใช้งานตามการใช้งาน |
---|---|
= | เท่ากับ |
!= | ไม่เท่ากับ |
< | น้อยกว่า |
> | มากกว่า |
<= | น้อยกว่าหรือเท่ากับ |
>= | มากกว่าหรือเท่ากับ |
ตัวดำเนินการทางตรรกะ
หากต้องการกรองข้อมูลของคุณเพิ่มเติม คุณสามารถเพิ่มผู้ประกอบการตรรกะไปยังแบบสอบถามของคุณ ตัวประกอบตรรกะ ShopifyQL ได้แก่:
ตัวประกอบตรรกะ | การใช้งานตามการใช้งาน |
---|---|
AND | กรองเพื่อแสดงแถวทั้งหมดที่เงื่อนไขคั่นด้วย AND พอใจแล้ว |
หรือ | ตัวกรองเพื่อแสดงแถวทั้งหมดที่เงื่อนไขใดเงื่อนไขหนึ่งที่คั่นด้วย OR ได้รับความพึงพอใจ |
NOT | กรองเพื่อแสดงเฉพาะแถวที่มีเงื่อนไขไม่พอใจ เช่น แถวที่ไม่มีค่าที่ระบุ |
คุณสามารถใช้ตัวกรองหลายตัวกรองกับคีย์เวิร์ด WHERE โดยการเพิ่มตัวประกอบตรรกะ
การเพิ่มไปยังคิวรีชุดข้อมูลตัวอย่างเพื่อจัดกลุ่มยอดขายสุทธิเป็นรายเดือนสำหรับคำสั่งซื้อทุกรายการที่มีที่อยู่สำหรับเรียกเก็บเงินในโอไฮโอและมีการใช้ส่วนลด คิวรีดังกล่าวจะมีลักษณะดังนี้:
ช่วงวันที่: ตั้งแต่และจนถึง
หากคุณต้องการกรองคําค้นหาตามวันที่หรือช่วงเวลาคุณสามารถใช้คําค้นหาตั้งแต่และจนถึงคําหลักและพารามิเตอร์ที่เกี่ยวข้องได้ คําหลักเหล่านี้ไม่เฉพาะเนื่องจากเป็นการกรองเฉพาะช่วงเวลาเท่านั้น
ตัวอย่างเช่น นี่คือคำค้นหายอดขายสุทธิในช่วง 12 เดือนที่ผ่านมาในแคนาดา โดยเริ่มด้วยวันนี้:
อ็อคเตอร์ชดเชย
คุณสามารถกรองตามวันที่ที่เฉพาะเจาะจงหรือตามการชดเชยวันที่ ผู้ให้บริการการชดเชยของ ShopifyQL ได้แก่:
ตัวดำเนินการชดเชย | การใช้งานตามการใช้งาน |
---|---|
-{#}d | จํานวนวันที่แล้วจากการสอบถามวันจะเริ่มต้น |
-{#}w | จำนวนสัปดาห์ก่อนหน้าวันที่มีการเรียกใช้คำค้นหา |
-{#}m | จำนวนเดือนก่อนหน้าวันที่มีการเรียกใช้คำค้นหา |
-{#}q | จำนวนไตรมาสก่อนหน้าวันที่มีการเรียกใช้คำค้นหา |
-{#}y | จำนวนปีก่อนหน้าวันที่มีการเรียกใช้คำค้นหา |
ปปปป-ดด-วว | วันที่ใดวันที่หนึ่ง |
วันนี้ | วันที่ที่เรียกใช้คำค้นหา |
เมื่อวาน | ช่วงเวลา 24 ชั่วโมงก่อนหน้านับตั้งแต่มีการเรียกใช้คำค้นหา |
การกรองในช่วงวันที่: DURING
คำสำคัญ DURING ช่วยให้กรองวันที่จากช่วงวันที่ได้ง่ายดายยิ่งขึ้น คุณสามารถใช้คำสำคัญ DURING เพื่อกรองผลลัพธ์การค้นหาในช่วงเวลาที่ระบุได้ เช่น ปีปฏิทินหรือเดือนที่ระบุ หรือช่วงวันที่ที่มีการกำหนดวันที่แตกต่างในแต่ละปี เช่น Black Friday Cyber Monday ตัวอย่างเช่น:
โดยสามารถใช้ DURING กับตัวดำเนินการช่วงวันที่ที่มีชื่อดังต่อไปนี้:
ตัวดำเนินการช่วงวันที่ | การใช้งานตามการใช้งาน |
---|---|
วันนี้ | วันที่ที่เรียกใช้คำค้นหา |
เมื่อวาน | ช่วงเวลา 24 ชั่วโมงก่อนหน้านับตั้งแต่มีการเรียกใช้คำค้นหา |
this_week | สัปดาห์ปัจจุบันในปฏิทิน |
this_month | เดือนปัจจุบันในปฏิทิน |
this_quarter | ไตรมาสปัจจุบันในปฏิทิน |
this_year | ปีปฏิทินปัจจุบัน |
last_week | สัปดาห์ก่อนหน้าในปฏิทิน |
last_month | เดือนก่อนหน้าในปฏิทิน |
last_quarter | ไตรมาสก่อนหน้าในปฏิทิน |
last_year | ปีปฏิทินก่อนหน้า |
bfcm2022 | 25 พฤศจิกายน ถึง 28 พฤศจิกายน 2022 |
bfcm2021 | 26 พฤศจิกายน - 29 พฤศจิกายน 2021 |
การเปรียบเทียบช่วงวันที่: COMPARE TO
คำสำคัญ COMPARE TO ช่วยให้คุณสามารถเปรียบเทียบข้อมูลในช่วงวันที่ที่ได้จาก DURING และ COMPARE TO ซึ่งยอมรับโอเรเตอร์ช่วงวันที่ที่มีชื่ออยู่ในส่วนในระหว่างนั้น ตัวประกอบที่ใช้โดย COMPARE TO ต้องมีความยาวที่เหมือนกับตัวที่ถูกใช้ในระหว่าง ตัวอย่างเช่นDURING this_week COMPARE TO last_week
ชุดข้อมูลที่ถูกต้อง แต่DURING this_week COMPARE TO last_month
ไม่ถูกต้อง
ตัวอย่างต่อไปนี้เป็นการเปรียบเทียบยอดขายสุทธิในช่วง Black Friday Cyber Monday ปี 2022 กับ Black Friday Cyber Monday ปี 2021
การจัดเรียงข้อมูล: ORDER BY
คุณสามารถระบุวิธีที่คุณต้องการจัดเรียงข้อมูลที่แสดงผลโดยคำค้นหาของคุณได้โดยการใช้คำสำคัญ ORDER BY และพารามิเตอร์ของคำดังกล่าว คือ ASC สำหรับคำสั่งซื้อที่เรียงจากน้อยไปหามาก และ DESC สำหรับคำสั่งซื้อที่เรียงจากมากไปหาน้อย
คุณสามารถระบุตัวชี้วัดหรือมิติใดๆ ที่คุณรวมไว้ในคำค้นหาในคำสำคัญ ORDER BY ได้ รวมถึงหลายช่อง
ตัวอย่างเช่น คิวรีนี้จะแสดงผลลัพธ์ยอดขายสุทธิของประเทศและภูมิภาคสำหรับเรียกเก็บเงินแต่ละแห่ง ซึ่งจะเรียงตามตัวอักษรของชื่อประเทศสำหรับเรียกเก็บเงิน จากนั้นจะเรียงตามภูมิภาคสำหรับเรียกเก็บเงินภายในแต่ละประเทศ โดยจะเรียงจากตัวอักษรหลังสุดไปหน้าสุด
ลำดับการเขียนเมตริกหรือไดเมนชั่นนั้นมีความสำคัญ หากคุณระบุค่าหลายค่าใน ORDER BY ระบบจะจัดเรียงแต่ละเมตริกหรือไดเมนชั่นตามลำดับที่ระบุไว้
ข้อจํากัด
คำสำคัญ LIMIT ช่วยให้คุณกำหนดจำนวนแถวที่คำค้นหาจะแสดงได้ ซึ่งจะมีประโยชน์เมื่อคุณเพียงแค่ต้องการทำความเข้าใจลักษณะของข้อมูลในแต่ละคอลัมน์เท่านั้น หรือคุณสามารถรวมคำสำคัญดังกล่าวกับ ORDER BY เพื่อสร้างรายการที่มีด้านบนและด้านล่างได้
ตัวอย่างนี้ใช้คำว่า LIMIT และ ORDER BY เพื่อสร้างรายการสินค้าขายดี 10 อันดับแรกในแง่ปริมาณ ในช่วง 3 เดือนที่ผ่านมา
การสร้างแผนภูมิคำค้นหาของคุณ: VISUALIZE และ TYPE
คำสำคัญ VISUALIZE ช่วยให้คุณสามารถเขียนคำค้นหา ShopifyQL ที่แสดงข้อมูลในแผนภูมิแบบเส้นและแบบแท่งได้
ทั้งนี้ คำสำคัญ TYPE นั้นไม่จำเป็น และต้องระบุพร้อมกับ 'line' หรือ 'bar' เพื่อให้คำค้นหาของคุณแสดงผลแบบภาพ โดยเป็นแผนภูมิเส้นตรงหรือแผนภูมิแท่งตามลำดับ หาก TYPE ไม่รวมอยู่ในคำค้นหาของคุณ ShopifyQL จะตัดสินใจเลือกการแสดงภาพที่ดีที่สุดที่เหมาะสมกับคำค้นหาของคุณโดยอัตโนมัติ หากคำค้นหาของคุณไม่สามารถแสดงภาพเป็นข้อความได้ ShopifyQL จะแสดงข้อมูลตาราง
ตัวอย่างเช่น คุณสามารถดูแนวโน้มยอดขายของคุณตามเดือนในช่วงปีที่ผ่านมาด้วยเส้นแนวโน้ม คำค้นหานี้แสดงผลแผนภูมิเวลาที่แสดงยอดขายรวมตามเดือนในปีที่ผ่านมา ยอดขายรวมจะถูกแสดงเป็นเส้นเดียว โดยมีแกน x เป็นเดือน และแกน y เป็นยอดขายรวม
ตัวดำเนินการทางคณิตศาสตร์
ShopifyQL อนุญาตให้ดำเนินการทางคณิตศาสตร์กับตัวชี้วัดของคุณได้ โดยตัวดำเนินการทางคณิตศาตร์ที่ใช้งานได้มีดังต่อไปนี้
ตัวดำเนินการทางคณิตศาสตร์ | การใช้งานตามการใช้งาน |
---|---|
+ | การบวกจำนวนสองจำนวน |
- | การลบจำนวนสองจำนวน |
* | การคูณจำนวนสองจำนวน |
/ | การหารจำนวนสองจำนวน |
ตัวอย่างเช่น คำค้นหานี้จะคํานวณมูลค่าคำสั่งซื้อของแต่ละภูมิภาคในปีที่ผ่านมา เมื่อใช้ตัวดำเนินการทางคณิตศาสตร์กับตัวชี้วัด คุณสามารถใช้คำสำคัญ AS เพื่อกําหนดชื่อใหม่ให้กับตัวชี้วัดใหม่ได้
ฟังก์ชัน
ฟังก์ชัน ShopifyQL ช่วยให้คุณสามารถรวมคอลัมน์ที่คล้าย Pivot Table ใน Microsoft Excel ได้ การรวมคอลัมน์หมายถึงการรวมคอลัมน์ต่างๆ เพื่อสร้างค่าใหม่ ตัวดำเนินการฟังก์ชันต่อไปนี้สามารถใช้งานได้ใน ShopifyQL เวอร์ชันปัจจุบัน:
ตัวดำเนินการฟังก์ชัน | การใช้งานตามการใช้งาน |
---|---|
count() | การนับของอินสแตนซ์ในชุดผลลัพธ์ |
sum() | ผลรวมของค่าในชุดผลลัพธ์ |
min() | ค่าต่ำสุดในชุดผลลัพธ์ |
max() | ค่าสูงสุดในชุดผลลัพธ์ |
avg() | ค่าเฉลี่ยในชุดผลลัพธ์ |
ฟังก์ชันsum
,min
,max
และavg
สามารถใช้ได้กับตัวเลขเท่านั้น ในขณะที่count
สามารถใช้ในการนับอินสแตนซ์ต่างๆ ของแอตทริบิวต์มิติได้ คุณไม่สามารถใช้ช่องข้อมูลเป็นอาร์กิวเมนต์ในฟังก์ชันได้ โดยช่องข้อมูลจะลงท้ายด้วย_sum
,_count
หรือ_percent
ตัวอย่างเช่น คำค้นหานี้แสดงผลข้อผิดพลาด เนื่องจากมีการรวม total_sales แล้ว
ต่อไปนี้คือคำค้นหาที่ถูกต้องซึ่งผสมช่องข้อมูลแบบรวมกับฟังก์ชันรวม:
คิวรีนี้จะแสดงผลรวมของมูลค่าคำสั่งซื้อโดยเฉลี่ยที่เก็บรวบรวมมา ผลรวมของยอดขายขั้นต้นอันเป็นผลมาจากการใช้ฟังก์ชันsum
ระบบจะแบ่งเมตริกเหล่านี้ของคำสั่งซื้อทุกรายการที่ได้สั่งซื้อในปี 2021 ตามภูมิภาคสำหรับเรียกเก็บเงิน
ความคิดเห็น
คุณสามารถใช้ความคิดเห็นเพื่ออธิบายส่วนต่างๆ ของข้อความ ShopifyQL หรือป้องกันการเรียกใช้ข้อความ ShopifyQL ระบบจะละเว้นข้อความใดๆ ที่มีความคิดเห็นในขณะที่เรียกใช้
ความคิดเห็นบรรทัดเดียวจะเริ่มต้นด้วย--
และสิ้นสุดที่ท้ายบรรทัด
ความคิดเห็นแบบหลายบรรทัดจะเริ่มต้นด้วย/*
และลงท้ายด้วย*/