SetGet Sorgu Dili (SGL)
SetGet Sorgu Dili (SGL), iş öğelerinde filtre koşullarını ifade etmek için kullanılan metin tabanlı bir sözdizimidir. Grafik filtre oluşturucu yaygın senaryoları kapsarken, SGL; farklı özellikler arasında VEYA mantığı, iç içe koşullar ve hassas tarih aritmetiği dahil karmaşık sorgular üzerinde tam kontrol sağlar.
SGL ne zaman kullanılmalı
SGL'yi şu durumlarda kullanın:
- Farklı özellikler arasında VEYA mantığına ihtiyaç duyduğunuzda (grafik oluşturucu yalnızca özellikler arasında VE'yi destekler).
- Açılır menülere tıklamaktan daha hızlı bir sorgu yazmak istediğinizde.
- Ekibinizle paylaşmak üzere yeniden kullanılabilir sorgu şablonları oluşturduğunuzda.
- Grafik oluşturucunun desteklemediği koşulları ifade etmeniz gerektiğinde.
Basit filtreler için grafik filtre oluşturucu genellikle daha hızlı ve keşfedilebilirdir.
Sözdizimine genel bakış
Bir SGL sorgusu, mantıksal operatörlerle bağlanmış koşulların bir dizisidir:
property operator value [AND|OR property operator value ...]Temel yapı
| Bileşen | Açıklama | Örnek |
|---|---|---|
| Özellik | Üzerinde filtrelenecek iş öğesi özelliği | state, priority, assignee |
| Operatör | Değeri nasıl karşılaştıracağı | =, !=, IN, NOT IN, <, >, BETWEEN |
| Değer | Karşılaştırılacak hedef değer | "In Progress", "Urgent", "2026-04-01" |
| Mantıksal bağlayıcı | Birden fazla koşulu birleştirir | AND, OR |
Örnek
state = "In Progress" AND priority = "Urgent" AND assignee = "alice@example.com"Bu sorgu; Devam Ediyor durumunda, Acil öncelikli ve Alice'e atanmış iş öğelerini döner.
Özellik adları
SGL sorgularında aşağıdaki özellik adlarını kullanın:
| SGL özelliği | Açıklama | Değer türü |
|---|---|---|
state | İş akışı durum adı | String |
state_group | Mantıksal durum grubu | String (backlog, unstarted, started, completed, cancelled) |
priority | Öncelik düzeyi | String (urgent, high, medium, low, none) |
assignee | Atanan üye e-postası veya görünen adı | String |
label | Etiket adı | String |
cycle | Döngü adı | String |
module | Modül adı | String |
project | Proje tanımlayıcısı (çalışma alanı görünümleri) | String |
created_by | Oluşturanın e-postası veya görünen adı | String |
subscriber | Abonenin e-postası veya görünen adı | String |
mention | Etiketlenen üyenin e-postası veya görünen adı | String |
due_date | Hedef tamamlama tarihi | Tarih |
start_date | Planlanan başlangıç tarihi | Tarih |
created_date | Oluşturulma tarihi | Tarih |
updated_date | Son değişiklik tarihi | Tarih |
estimate | Efor tahmini | Sayı |
Özellik adları büyük/küçük harfe duyarsızdır. State, state ve STATE tümü eşdeğerdir.
Operatörler
Karşılaştırma operatörleri
| Operatör | Anlamı | Uygulanabilen |
|---|---|---|
= | Eşittir | Tüm türler |
!= | Eşit değildir | Tüm türler |
IN | Listedeki herhangi bir değerle eşleşir | String, sayı |
NOT IN | Listedeki hiçbir değerle eşleşmez | String, sayı |
< | Küçüktür | Tarih, sayı |
> | Büyüktür | Tarih, sayı |
<= | Küçük veya eşittir | Tarih, sayı |
>= | Büyük veya eşittir | Tarih, sayı |
BETWEEN | Bir aralık içinde (dahil) | Tarih, sayı |
CONTAINS | Özellik değeri içerir (çok değerli özellikler için) | Atananlar, etiketler, aboneler |
NOT CONTAINS | Özellik değeri içermez | Atananlar, etiketler, aboneler |
IS EMPTY | Özelliğin ayarlanmış bir değeri yok | Tüm türler |
IS NOT EMPTY | Özelliğin ayarlanmış bir değeri var | Tüm türler |
Mantıksal operatörler
| Operatör | Anlamı |
|---|---|
AND | Her iki koşul da doğru olmalı |
OR | En az bir koşul doğru olmalı |
VE ile VEYA'yı karıştırırken önceliği denetlemek için parantez kullanın:
(state = "In Progress" OR state = "In Review") AND priority = "Urgent"Parantezler olmadan VE, VEYA'ya göre önceliklidir.
Değer formatları
String'ler
String değerleri çift tırnak içine alın:
state = "In Progress"
label = "Bug"
assignee = "alice@example.com"Birden fazla değer (IN operatörü)
Virgülle ayrılmış tırnaklı değerleri parantez içinde kullanın:
state IN ("Todo", "In Progress", "In Review")
priority NOT IN ("None", "Low")Tarihler
Çift tırnak içinde ISO 8601 formatını (YYYY-MM-DD) kullanın:
due_date < "2026-04-01"
created_date BETWEEN "2026-03-01" AND "2026-03-31"Göreli tarihler
SGL, dinamik sorgular için göreli tarih ifadelerini destekler:
| İfade | Anlamı |
|---|---|
TODAY | Geçerli tarih |
TODAY - 7d | 7 gün önce |
TODAY + 14d | Bugünden 14 gün sonra |
START_OF_WEEK | Geçerli haftanın Pazartesi günü |
END_OF_WEEK | Geçerli haftanın Pazar günü |
START_OF_MONTH | Geçerli ayın ilk günü |
END_OF_MONTH | Geçerli ayın son günü |
Örnek:
due_date BETWEEN TODAY AND TODAY + 7dBu, önümüzdeki 7 gün içinde teslim edilmesi gereken öğeleri döner.
Sayılar
Tırnak kullanmadan çıplak sayılar kullanın:
estimate > 5
estimate BETWEEN 1 AND 8Boş kontrolleri
Değer olmadan IS EMPTY ve IS NOT EMPTY kullanın:
assignee IS EMPTY
due_date IS NOT EMPTYKoşulları birleştirme
VE mantığı
VE ile birleştirilen tüm koşulların doğru olması gerekir:
state = "In Progress" AND priority = "Urgent" AND assignee = "bob@example.com"VEYA mantığı
VEYA ile birleştirilen en az bir koşulun doğru olması gerekir:
priority = "Urgent" OR priority = "High"Parantezlerle karışık mantık
Parantezler koşulları gruplandırır ve değerlendirme sırasını denetler:
(priority = "Urgent" OR priority = "High") AND state != "Done" AND assignee IS NOT EMPTYBu; Acil veya Yüksek öncelikli, Tamamlandı olmayan ve en az bir atanan kişisi olan öğeleri döner.
İç içe parantezler
Karmaşık ifadeler için parantezleri iç içe yerleştirebilirsiniz:
(state = "In Progress" AND priority = "Urgent") OR (state = "Todo" AND due_date < TODAY)Bu; Acil ve Devam Ediyor olan veya Yapılacak'ta hâlâ olan vadesi geçmiş öğeleri döner.
Yaygın sorgular için örnekler
Vadesi geçen öğelerim
assignee = "me" AND due_date < TODAY AND state_group != "completed" AND state_group != "cancelled"Özel değer "me", oturum açmış geçerli kullanıcıyı ifade eder.
Belirli bir projedeki atanmamış backlog öğeleri
project = "BACKEND" AND assignee IS EMPTY AND state = "Backlog"Bu ay oluşturulan ancak henüz başlatılmayan öğeler
created_date >= START_OF_MONTH AND state_group = "unstarted"Tahmini olmayan yüksek öncelikli öğeler
priority IN ("Urgent", "High") AND estimate IS EMPTYBelirli bir etikete sahip belirli bir döngüdeki öğeler
cycle = "Sprint 14" AND label CONTAINS "Frontend"Son zamanlarda güncellenen ancak geçerli sprinte atanmayan öğeler
updated_date >= TODAY - 7d AND cycle != "Sprint 14"Diğer işi engelleyen öğeler
label CONTAINS "Blocker" AND state_group IN ("unstarted", "started")Çalışma alanı çapında triyaj sorgusu
priority = "Urgent" AND state_group != "completed" AND state_group != "cancelled" AND due_date <= TODAY + 3dEtkileşimli sorgu düzenleyici
SGL düzenleyiciye herhangi bir görünümden erişilebilir:
- Araç çubuğundaki Filtre düğmesine tıklayın.
- Grafik oluşturucudan metin düzenleyiciye geçmek için Sorgu Düzenleyici (veya kod simgesine) tıklayın.
- Metin alanına SGL sorgunuzu yazın.
- Sorguyu çalıştırmak için Enter tuşuna basın veya Uygula seçeneğine tıklayın.
Otomatik tamamlama
Düzenleyici, yazarken otomatik tamamlama önerileri sunar:
| Tetikleyici | Sunulan öneriler |
|---|---|
| Bir özellik adı yazmaya başladığınızda | Eşleşen özellik adları |
| Bir operatör yazdıktan sonra | Beklenen değer formatı ipucu |
Bir durum özelliğinde = yazdıktan sonra | Kullanılabilir durum adları |
Bir öncelik özelliğinde = yazdıktan sonra | Öncelik düzeyi adları |
Bir atanan özelliğinde = yazdıktan sonra | Çalışma alanı üye adları |
Bir etiket özelliğinde = yazdıktan sonra | Kullanılabilir etiket adları |
Sözdizimi vurgulama
Düzenleyici, sorgunun farklı bölümlerini vurgular:
| Öğe | Renk |
|---|---|
| Özellik adları | Mavi |
| Operatörler | Mor |
| String değerler | Yeşil |
| Tarih değerleri | Turuncu |
| Mantıksal bağlayıcılar (AND, OR) | Kalın |
| Hatalar | Kırmızı altı çizili |
Hata yönetimi
Sorgunuz bir sözdizimi hatası içeriyorsa, düzenleyici giriş alanının altında bir hata mesajı gösterir:
| Hata | Sebep | Çözüm |
|---|---|---|
| Bilinmeyen özellik | Özellik adında yazım hatası | Yukarıdaki özellik adı tablosunu kontrol edin |
| Özellik türü için geçersiz operatör | String özellikte < kullanımı | String'ler için =, !=, IN veya NOT IN kullanın |
| Değer bekleniyor | Operatörden sonra değer eksik | Tırnaklı bir string, tarih veya sayı ekleyin |
| Eşleşmeyen parantez | Kapanan ) olmadan açılan ( | Eksik parantezi ekleyin |
| Geçersiz tarih formatı | Tarih YYYY-MM-DD formatında değil | "2026-04-01" formatını kullanın |
| Boş sorgu | Hiçbir koşul belirtilmedi | En az bir koşul ekleyin |
Tüm hatalar çözülene kadar sorgu uygulanmaz. Hataları düzeltirken önceki filtre durumu aktif kalır.
İPUCU
Sözdiziminden emin değilseniz grafik filtre oluşturucu ile başlayın ve ardından SGL eşdeğerini görmek için sorgu düzenleyiciye geçin. Bu, sözdizimini öğrenmenin etkili bir yoludur.
SGL sorgularını görünüm olarak kaydetme
SGL sorguları, grafik filtreler gibi görünüm olarak kaydedilebilir:
- SGL sorgunuzu yazın ve uygulayın.
- Görünüm Olarak Kaydet seçeneğine tıklayın.
- Bir ad girin ve Kaydet seçeneğine tıklayın.
Görünüm, ham SGL sorgusunu saklar. Görünümü açtığınızda, sorgu düzenleyici kaydedilen sorgu metnini gösterir. Sorgu, oluşturucunun yetenekleriyle uyumlu olduğunda, koşulları görsel olarak görmek için grafik oluşturucuya da geçebilirsiniz.
SGL ile grafik filtreler karşılaştırması
| Yetenek | Grafik filtre | SGL |
|---|---|---|
| Özellikler arası VE | Evet | Evet |
| Aynı özellik içinde VEYA | Evet (çoklu seçim) | Evet |
| Farklı özellikler arası VEYA | Hayır | Evet |
| İç içe koşullar | Hayır | Evet |
| Göreli tarihler | Sınırlı hazır ayarlar | Tam ifade sözdizimi |
| Otomatik tamamlama | Yerleşik | Yerleşik |
| Metin olarak paylaşılabilir | Hayır | Evet (sorgu metnini kopyala/yapıştır) |
| Öğrenme eğrisi | Düşük | Orta |
İlgili sayfalar
- Filtreler — Yaygın filtre senaryoları için grafik filtre oluşturucu.
- Görünümlere Genel Bakış — SGL sorgularını yeniden kullanılabilir görünümler olarak kaydedin.
- Görüntüleme Seçenekleri — Filtrelerle birlikte gruplama ve sıralamayı yapılandırın.
- Çalışmalarım — Önceden filtrelenmiş bölümlerle kişisel kontrol paneli.
- İş Öğelerine Genel Bakış — Sorgulama için kullanılabilen özellikleri anlayın.