ภาษาของคำค้นหา

ภาษาของคำค้นหาคือไวยากรณ์ที่คุณใช้เพื่อค้นหาปัญหาในเครื่องมือติดตามปัญหาของ Google คุณสามารถใช้ภาษาดังกล่าวในคำค้นหาที่ป้อนในแถบค้นหา คุณยังใช้เครื่องมือสร้างคำค้นหาเพื่อเลือกเกณฑ์แบบกราฟิกได้ด้วย ซึ่งระบบจะแปลงเป็นภาษาคําค้นหาเมื่อปิดเครื่องมือสร้างคำค้นหา

ภาษาในการค้นหาช่วยให้คุณค้นหาตามเกณฑ์ต่อไปนี้ได้

  • คีย์เวิร์ด
  • คู่ฟิลด์:ค่า

การค้นหาที่คุณทําอาจมีเกณฑ์หลายรายการ ซึ่งรวมถึงคีย์เวิร์ดและคู่ฟิลด์:ค่าผสมกัน ไวยากรณ์ภาษาคําค้นหาช่วยให้คุณระบุความสัมพันธ์และลําดับการพิจารณาเกณฑ์ได้โดยใช้โอเปอเรเตอร์เชิงตรรกะ เครื่องหมายวงเล็บและเครื่องหมายคําพูด

การค้นหาคีย์เวิร์ด

คีย์เวิร์ดคือสตริงข้อความที่คุณสามารถใช้เพื่อค้นหาในบางช่องในข้อ ฟิลด์เหล่านี้มีดังนี้

  • ชื่อ
  • ความคิดเห็น
  • ชื่อไฟล์แนบ
  • ช่องที่มีผู้ใช้ (เช่น ผู้ได้รับมอบหมายหรือสำเนา)
  • ฟิลด์ที่มีหมายเลขรหัสภายใน (เช่น ฟิลด์ที่ระบุคอมโพเนนต์หรือรายการติดตามที่มีปัญหา)
  • ฟิลด์ที่มีหมายเลขเวอร์ชัน
  • ฟิลด์ที่กำหนดเอง

ตัวอย่างเกณฑ์การค้นหาคีย์เวิร์ดคือสตริง configuration properties เมื่อป้อนเกณฑ์นี้ในการค้นหา Issue Tracker จะค้นหาปัญหาทั่วโลกในคอมโพเนนต์ทั้งหมดและแสดงปัญหาที่มีทั้ง 2 คีย์เวิร์ดตามที่ควบคุมโดยสิทธิ์การควบคุมการเข้าถึง คีย์เวิร์ดอาจอยู่ในฟิลด์ที่แตกต่างกันหรือฟิลด์เดียวกันก็ได้

คีย์เวิร์ดจะจับคู่กับคำพ้องพื้นฐานบางคำด้วย ดังนั้นการค้นหา property อาจพบข้อบกพร่องที่มีคําว่า properties ด้วย มิเช่นนั้นการค้นหาจะจับคู่เฉพาะโทเค็นคำที่สมบูรณ์เท่านั้น แทนที่จะถือว่าคำค้นหาเป็นสตริงย่อย

ระบบจะนำอักขระพิเศษส่วนใหญ่ออกจากคีย์เวิร์ดก่อนทำการค้นหา ตัวอย่างเช่น คําค้นหาอย่าง my-query_text จะแยกออกเป็นโทเค็น my และ query_text และจะแสดงผลข้อบกพร่องที่ตรงกับทั้ง 2 โทเค็น

Issue Tracker จะถือว่าอักขระเว้นวรรคที่แยกเกณฑ์การค้นหาเป็นAND โอเปอเรเตอร์โดยนัย คุณสามารถใช้เครื่องหมายคําพูด (") เพื่อระบุว่าให้ระบบพิจารณาสตริงหลายคำเป็นคีย์เวิร์ดเดียว การค้นหาทั้งหมดในเครื่องมือติดตามปัญหาจะไม่คำนึงถึงตัวพิมพ์เล็กและตัวพิมพ์ใหญ่ ไม่ว่าคุณจะใส่เครื่องหมายคำพูดหรือไม่ก็ตาม

การค้นหาคู่ฟิลด์:ค่า

นอกจากนี้ คุณยังระบุเกณฑ์การค้นหาเป็นคู่ฟิลด์:ค่าได้ด้วย ไวยากรณ์พื้นฐานคือ [field]:[value] สําหรับช่องข้อความ รูปแบบคำสั่งนี้จะจับคู่ปัญหาที่ช่องที่ระบุมีค่า สําหรับช่องประเภทอื่นๆ เงื่อนไขนี้จะจับคู่กับข้อบกพร่องที่มีค่าในช่องเทียบเท่า

ตัวอย่างเช่น การค้นหา title:latency จะจับคู่ปัญหาที่มีคํา latency ในช่องชื่อ การค้นหา priority:p0 จะค้นหาปัญหาที่มีลําดับความสําคัญเป็น p0

ระบบจะตีความช่องที่ไม่รู้จักเป็นการค้นหาคีย์เวิร์ด

โปรดทราบว่าสำหรับฟิลด์เวลาและจำนวน คุณสามารถอักขระความสัมพันธ์อื่นๆ นอกเหนือจากโคลอน โปรดดูโอเปอเรเตอร์ที่เกี่ยวข้อง

การค้นหาค่าพิเศษโดยใช้ any และ none

ระบบอาจค้นหาฟิลด์ที่ไม่บังคับด้วยค่าพิเศษ any และ none any ตรงกับค่าใดก็ได้ที่ไม่ใช่ค่า Null none จับคู่กับค่า Null ดูรายการป้ายกํากับช่องที่รองรับทั้งหมดในภาษาคําค้นหาได้ที่ข้อมูลอ้างอิงคําค้นหา

โอเปอเรเตอร์ตรรกะ

โอเปอเรเตอร์เชิงตรรกะช่วยให้คุณระบุเกณฑ์ได้มากกว่า 1 รายการและระบุความสัมพันธ์ระหว่างเกณฑ์เหล่านั้น อักขระเว้นวรรคที่อยู่นอกเครื่องหมายคำพูดจะทำหน้าที่เป็นโอเปอเรเตอร์ AND ที่ไม่ระบุ เครื่องมือติดตามข้อบกพร่องรองรับโอเปอเรเตอร์ทางตรรกะแบบชัดเจนเพิ่มเติมต่อไปนี้

โอเปอเรเตอร์ สัญลักษณ์สำรอง คำอธิบาย ตัวอย่าง
และ {whitespace} จับคู่หากปัญหามีเกณฑ์ทั้ง 2 ข้อ star:true AND componentid:46046
หรือ | ตรงกันหากปัญหามีเกณฑ์อย่างใดอย่างหนึ่ง type:(Bug|feature_request)
NOT - จับคู่หากปัญหาไม่มีเกณฑ์ -assignee:jim
"..." จับคู่หากปัญหามีวลีที่ยกมา (คำในเครื่องหมายคำพูดปรากฏตามลำดับเดียวกัน) comment:"We have a problem"
( ) จัดกลุ่มค่าหรือเกณฑ์การค้นหาไว้ด้วยกัน status:open AND (priority:(p0|p1) OR severity:(s0|s1))

โปรดทราบดังต่อไปนี้

  • คุณต้องใส่อักษรตัวพิมพ์ใหญ่ทั้งหมดสำหรับ AND, OR และ NOT

  • โอเปอเรเตอร์ NOT มีความหมายเหมือนกันไม่ว่าจะอยู่หน้าชื่อช่องหรือค่าของช่อง ซึ่งหมายความว่า -assignee:jim และ assignee:-jim มีค่าเท่ากัน

  • ใช้วงเล็บเพื่อจัดกลุ่มข้อความในคำค้นหาอย่างชัดเจน โดยค่าเริ่มต้น เครื่องมือติดตามปัญหาจะเชื่อมโยง NOT กับคําที่อยู่ถัดจาก NOT เท่านั้น และจัดกลุ่ม NOT กับคํา 2 รายการที่อยู่ตรงกลางOR เช่น คําค้นหา title:(a OR b NOT c AND d) มีค่าเท่ากับ title:((a OR b) AND (NOT c) AND d)

เครื่องหมายขีดกลาง

อักขระขีดกลาง (-) มีความหมายแตกต่างกันไปตามบริบทในข้อความค้นหา ดังนี้

  • เครื่องมือติดตามปัญหาจะถือว่าขีดกลางที่อยู่หน้าคำในการค้นหาเป็นNOT โอเปอเรเตอร์ เช่น เกณฑ์การค้นหา -assignee:none หรือ assignee:-none จะแสดงปัญหาทั้งหมดที่มีผู้ได้รับมอบหมาย

  • Issue Tracker จะถือว่าสตริงที่เชื่อมต่อด้วยเครื่องหมายขีดกลางเป็นสตริงที่มีเครื่องหมายคำพูดล้อมรอบ เช่น เกณฑ์การค้นหา state-of-the-art เทียบเท่ากับ "state of the art"

  • เครื่องมือติดตามปัญหาจะถือว่าคำที่ขีดกลางในช่องปัญหาเป็นคำอิสระที่แยกกันด้วยเว้นวรรค ซึ่งหมายความว่าหากปัญหามีคำว่า state-of-the-art ในชื่อและคุณเรียกใช้ข้อความค้นหา title:(of art state the) หรือ title:("state of the art") ระบบจะแสดงปัญหานั้นเป็นส่วนหนึ่งของผลการค้นหา

โอเปอเรเตอร์ที่เกี่ยวข้อง

ไวยากรณ์พื้นฐานสำหรับเกณฑ์การค้นหาแบบฟิลด์:ค่าคือ [field]:[value] โดยที่เครื่องหมายโคลอน (:) จะระบุว่าช่องที่ระบุต้องเท่ากับหรือมีค่าที่ระบุเพื่อให้ระบบแสดงปัญหาในผลการค้นหา

ฟิลด์ที่มีค่าเวลา (created, modified, resolved, verified และฟิลด์ที่กำหนดเองบางฟิลด์) หรือค่าจำนวน (duplicatecount, votecount, commentcount และ cccount) รองรับโอเปอเรเตอร์เชิงสัมพันธ์เพิ่มเติมต่อไปนี้

สัญลักษณ์ คำอธิบาย
< จับคู่ปัญหาหากค่าของปัญหาน้อยกว่าหรืออยู่ก่อนค่าการค้นหา
<= จับคู่ปัญหาหากค่าของปัญหาน้อยกว่า ก่อน หรือเท่ากับค่าการค้นหา
> ตรงกับปัญหาหากค่าของปัญหามากกว่าหรืออยู่หลังค่าการค้นหา
>= จับคู่ปัญหาหากค่าของปัญหามากกว่า อยู่หลัง หรือเท่ากับค่าการค้นหา

การค้นหาเวลา

ภาษาคําค้นหามีไวยากรณ์พิเศษสําหรับการจับคู่ช่องที่มีค่าเวลา ซึ่งจะช่วยให้เครื่องมือติดตามปัญหาค้นหาได้ในช่วงของเวลาหรือเวลาแบบสัมพัทธ์ตามต้องการ

รูปแบบเวลาสัมบูรณ์

รูปแบบสำหรับการระบุเวลามีดังนี้

[yyyy]-[MM]-[dd]T[HH]:[mm]:[ss]

ในรูปแบบนี้ [yyyy] คือปี 4 หลัก [MM] คือเดือน 2 หลัก [dd] คือวัน 2 หลัก [HH] คือชั่วโมง 2 หลักของนาฬิกา 24 ชั่วโมง [mm] คือนาที และ [ss] คือวินาที ระบบจะตีความเวลาทั้งหมดในการค้นหาเป็น UTC แม้ว่าคุณจะเลือกเขตเวลาอื่นไว้ในการตั้งค่าวันที่และเวลาก็ตาม

คุณสามารถระบุระดับความเฉพาะเจาะจงเมื่อค้นหาปัญหาที่สร้างขึ้น ณ เวลาก่อนหรือหลังเวลาหนึ่งๆ เช่น คุณสามารถระบุ created:2014-06 เพื่อค้นหาปัญหาที่สร้างในเดือนมิถุนายน 2014 หากต้องการเจาะจงมากขึ้น ให้ค้นหา created:2014-06-03T04 เพื่อดูปัญหาที่สร้างในวันที่ 3 มิถุนายน 2014 ในช่วงชั่วโมงที่ 4 (ระหว่างเวลา 04:00-05:00 น. ตามเวลา UTC)

ช่วงเวลา

คุณใช้อักขระจุด 2 ตัว (..) เพื่อระบุช่วงเวลาในเกณฑ์การค้นหาของรูปแบบฟิลด์:ค่าได้ ไวยากรณ์คือ [field]:[start time]..[end time] เวลาเริ่มต้นและสิ้นสุดจะมีความเฉพาะเจาะจงในระดับใดก็ได้ตามต้องการ ตัวอย่างเช่น verified:2013..2015 จะแสดงปัญหาทั้งหมดที่ได้รับการยืนยันในปี 2013, 2014 หรือ 2015

รูปแบบเวลาแบบสัมพัทธ์

นอกจากนี้ คุณยังระบุเวลาเป็นจำนวนวันก่อนวันนี้ได้ด้วย โดยให้ใช้รูปแบบ [days]d โดยที่ [days] คือจํานวนวันที่ผ่านมาที่คุณต้องการรวมไว้ในผลการค้นหา เช่น คุณสามารถใช้ modified:5d เพื่อค้นหาปัญหาที่แก้ไขในช่วง 5 วันที่ผ่านมา

เมื่อใช้รูปแบบเวลาแบบสัมพัทธ์ โอเปอเรเตอร์ต้องเป็นอักขระโคลอน (:) เช่น created:5d หากต้องการค้นหาปัญหาที่ไม่อยู่ในช่วงดังกล่าว ให้ใช้โอเปอเรเตอร์ NOT หรือ -

เช่น -verified:10d จะแสดงผลปัญหาที่ยังไม่ได้ยืนยันในช่วง 10 วันที่ผ่านมา หากต้องการค้นหาปัญหาที่ได้รับการยืนยันแล้ว แต่ไม่ได้เกิดขึ้นในช่วง 10 วันที่ผ่านมา ให้ใช้ (-verified:10d) AND status:verified

การค้นหา "วันนี้" ด้วยการคำนวณวัน

คุณสามารถใช้โทเค็น today ในการค้นหาตามเวลาเพื่อแทนที่วันที่ปัจจุบันได้ รองรับการใช้การดำเนินการทางคณิตศาสตร์ของวัน เช่น today+10 และ today-2 นอกจากนี้ คุณยังใช้โทเค็น today กับช่วงเวลาอย่าง today-2..today+3 ได้ด้วย การใช้โทเค็น today ในการค้นหาที่บันทึกไว้จะช่วยให้ใช้คำค้นหาซ้ำได้

ตัวอย่าง

  • created:today
  • modified<=today-10
  • nearestslo:today+10
  • resolved:2024-02-29..today+2
  • customfield1002:today..today+5

ข้อควรระวัง: ดังที่กล่าวไว้ในรูปแบบเวลาสัมบูรณ์ การค้นหาเวลาในเครื่องมือติดตามปัญหาจะเป็นเวลา UTC เช่นเดียวกับการค้นหาที่ใช้ today