PostgreSQL BEĞEN, Beğenme, Joker Karakter (%, _) Örnekleri

⚡ Akıllı Özet

PostgreSQL LIKE operatörü, yüzde işareti ve alt çizgi olmak üzere iki joker karakter kullanarak metni kalıplarla eşleştirir. Bu eğitimde, SELECT ifadelerinde LIKE ve NOT LIKE'ın nasıl kullanılacağı, her durum için psql ve pgAdmin örnekleriyle gösterilmektedir.

  • 🔍 çekirdek Operator: LIKE operatörü, bir sütunu veya ifadeyi joker karakter kalıbıyla karşılaştırır ve eşleşme durumunda true değerini döndürür.
  • 🌟 İki Joker Kartı: % sıfır veya daha fazla karakterle eşleşir; _ tam olarak bir karakterle eşleşir.
  • Ters Eşleştirme: NOT ile LIKE'ı birleştirerek, aynı koşulu sağlamayan satırları döndürün. değil Deseni eşleştirin.
  • İki Arayüz: Aynı sorguları psql komut satırından veya pgAdmin içinden grafiksel olarak çalıştırabilirsiniz.
  • 🎯 Kaçış Karakteri: Desen içindeki % veya _ karakterlerini birebir eşleştirmek için ESCAPE yan tümcesini kullanın.
  • 🤖 Yapay Zeka Desteği: Yapay zekâ veritabanı araçları, düz dildeki arama ihtiyaçlarını LIKE kalıplarına çevirir ve büyük/küçük harf duyarlılığı olmayan eşleştirme gerektiğinde ILIKE önerir.

PostgreSQL BEĞEN, Beğenme, Joker Karakter (%, _) Örnekleri

MKS PostgreSQL GİBİ Bu operatör, joker karakterler kullanarak metin değerlerini kalıplarla eşleştirir. Arama ifadesi kalıpla eşleşirse, LIKE değeri döndürülür. trueJoker karakterler şu şekilde çalışır: WHERE fıkra SELECT, UPDATE, INSERTya da DELETE.

All ON XNUMX İmplant Tedavisi Nasıl Uygulanır? PostgreSQL Joker karakterler mi?

PostgreSQL İki adet LIKE joker karakterini destekler:

  • Yüzde işareti (%): Sıfır, bir veya birden fazla karakter veya rakamla eşleşir.
  • Alt çizgi (_): Tam olarak bir karakter veya rakamla eşleşir.

İki sembol aynı desen içinde birleştirilebilir. LIKE, joker karakterlerden hiçbiri kullanılmadan kullanılırsa, eşittir (=) Şebeke.

PostgreSQL BENZER Sözdizimi

Temel LIKE sözdizimi şu şekildedir:

expression LIKE pattern [ ESCAPE 'escape-character' ]
  • ifade — Genellikle sütun veya alan adı olan bir karakter ifadesi.
  • model — joker karakterler içeren bir karakter ifadesi.
  • kaçış karakterli — isteğe bağlı. Kelime kelime eşleştirme yapmanızı sağlar. % or _ karakterler. Atlandığında, ters eğik çizgi (\) varsayılan kaçış karakteridir.

PostgreSQL % joker karakteriyle BEĞENİN

MKS % İşaret sıfır, bir veya daha fazla karakterle eşleşebilir. Aşağıdakileri göz önünde bulundurun: Book tablosu:

LIKE örneklerinde kullanılan örnek kitap tablosu

Adı "Lear" ile başlayan kitapları bulmak için aşağıdaki sorguyu çalıştırın.

SELECT *
FROM
   Book
WHERE
   name LIKE 'Lear%';

Sorgu şu sonucu döndürüyor:

Lear% sorgusunun eşleşen kitapları döndüren sonucu gibi

Adında herhangi bir yerde "by" geçen kitapları bulmak için:

SELECT *
FROM
   Book
WHERE
   name LIKE '%by%';

Sorgu şu sonucu döndürüyor:

LIKE %by% sorgu sonucu eşleşen kitaplarla

PostgreSQL _ Joker karakteriyle BEĞENİN

MKS _ İşaret tam olarak tek bir karakterle eşleşir. Aşağıdaki sorgu, ilk karakteri herhangi bir tek harf olan, ardından "earn" ve sonrasında herhangi bir sonek gelen isimleri bulur:

SELECT *
FROM
   Book
WHERE
   name LIKE '_earn%';

Sorgu şu sonucu döndürüyor:

_earn% sorgusunun tek karakterli önek eşleşmeleriyle elde edilen sonuçları gibi

Başka bir örnek — "Beginner" kelimesiyle ve bir karakter daha eklenerek biten herhangi bir metni eşleştirin:

SELECT *
FROM
   Book
WHERE
   name LIKE '%Beginner_';

Sorgu şu sonucu döndürüyor:

LIKE %Beginner_ sorgu sonucu sondaki tek karakterle eşleşiyor

PostgreSQL GİBİ DEĞİL Operator

LIKE ve NOT'u birleştirerek, aynı koşulu sağlamayan satırları döndürün. değil Desene uygun kitapları listeleyin. Örneğin, adı "Post" ile başlamayan tüm kitapları listeleyin:

SELECT *
FROM
   Book
WHERE
   name NOT LIKE 'Post%';

Sorgu şu sonucu döndürüyor:

Post ile başlayan kitaplar hariç, Post'un % sonucunu beğenmeyin.

Bu koşulu yalnızca bir kitap sağlıyor. Şimdi adı bu koşulu sağlayan tüm kitapları listeleyin. değil “Made” kelimesini içerir:

SELECT *
FROM
   Book
WHERE
   name NOT LIKE '%Made%';

Sorgu şu sonucu döndürüyor:

%Made% sonucu gibi üç eşleşen kitap döndürmek DEĞİL

Üç satır bu koşulu sağlıyor.

pgAdmin ile LIKE kullanımı

Aynı sorgular, pgAdmin'in Sorgu Aracı içinde grafiksel olarak da çalıştırılabilir.

pgAdmin'de joker karakter

) 1 Adım pgAdmin'e giriş yapın.

) 2 Adım Soldaki gezinme çubuğunda, tıklayın veritabanları, Ardından Gösteri.

Veritabanları ve Demo bölümleri genişletilmiş pgAdmin gezinme ağacı

) 3 Adım Sorguyu Sorgu Düzenleyici'ye yazın:

SELECT *
FROM
   Book
WHERE
   name LIKE 'Lear%';

) 4 Adım Tıkla Gerçekleştirmek.

Yürüt araç çubuğu düğmesiyle pgAdmin Sorgu Aracı

Sonuç panelinde eşleşen kitaplar gösterilir:

LIKE Lear% sorgusu için pgAdmin sonuç paneli.

Adında "by" ifadesi geçen bir kitabı aramak için:

) 1 Adım Sorgu Düzenleyicisine aşağıdakileri yazın:

SELECT *
FROM
   Book
WHERE
   name LIKE '%by%';

) 2 Adım Tıkla Gerçekleştirmek.

pgAdmin Sorgulama Aracı, LIKE %by% sorgusunu çalıştırıyor.

Sonuç paneli şunları gösterir:

LIKE %by% sorgusu için pgAdmin sonuç paneli.

_ pgAdmin'de joker karakter

) 1 Adım pgAdmin'e giriş yapın.

) 2 Adım Soldaki gezinme çubuğunda, tıklayın veritabanları, Ardından Gösteri.

pgAdmin gezinme ağacı, Veritabanları ağacını gösteriyor.

) 3 Adım Sorguyu Sorgu Düzenleyici'ye yazın:

SELECT *
FROM
   Book
WHERE
   name LIKE '_earn%';

) 4 Adım Tıkla Gerçekleştirmek.

pgAdmin Sorgulama Aracı, LIKE _earn% sorgusunu çalıştırıyor.

Sonuç paneli şunları gösterir:

LIKE _earn% sorgusu için pgAdmin sonuç paneli

) 5 Adım İkinci örneği çalıştırın:

  1. Sorguyu Sorgu Düzenleyici'ye yazın:
SELECT *
FROM
   Book
WHERE
   name LIKE '%Beginner_';
  1. Tıkla Gerçekleştirmek.

pgAdmin Sorgulama Aracı, LIKE %Beginner_ sorgusunu çalıştırıyor.

Sonuç paneli şunları gösterir:

LIKE %Beginner_ sorgusu için pgAdmin sonuç paneli.

pgAdmin'deki gibi değil

) 1 Adım pgAdmin'e giriş yapın.

) 2 Adım Soldaki gezinme çubuğunda, tıklayın veritabanları, Ardından Gösteri.

pgAdmin gezinme ağacı örneği: BEĞENMEYİN

) 3 Adım Adı "Post" ile başlamayan tüm kitapları listelemek için şunu yazın:

SELECT *
FROM
   Book
WHERE
   name NOT LIKE 'Post%';

) 4 Adım Tıkla Gerçekleştirmek.

pgAdmin Sorgu Aracı, Post% sorgusunu beğenmeyecek şekilde çalışıyor.

Sonuç paneli şunları gösterir:

pgAdmin'de NOT LIKE Post% sorgusu için sonuç paneli.

NOT LIKE sorgusu için ek pgAdmin sonuç detayı

İsminde "Made" kelimesi geçmeyen kitapları listelemek için:

) 1 Adım Sorgu Düzenleyicisine aşağıdakileri yazın:

SELECT *
FROM
   Book
WHERE
   name NOT LIKE '%Made%';

) 2 Adım Tıkla Gerçekleştirmek.

pgAdmin Sorgulama Aracı, NOT LIKE %Made% sorgusunu çalıştırıyor.

Sonuç paneli şunları gösterir:

pgAdmin'de NOT LIKE %Made% sorgusunun sonuç paneli.

Bu eğitimde kullanılan veritabanını indirin..

SSS

LIKE büyük/küçük harf duyarlıdır, ILIKE ise büyük/küçük harf duyarsız eşleştirme yapar. ILIKE bir PostgreSQL Örneğin, ILIKE 'lear%' ifadesi "Learn" ve "LEAR" kelimeleriyle eşleşir. Kullanıcının büyük/küçük harf duyarlılığı tahmin edilemez olduğunda ILIKE ifadesini kullanın.

Kaçış karakteri belirtmek için ESCAPE ifadesini kullanın, ardından joker karakterin kendisini öne ekleyin. Örneğin, WHERE code LIKE '50!%%' ESCAPE '!' ifadesi, ünlem işareti yüzde işaretini kaçırdığı için "50%" ile başlayan değerleri bulur.

Basit önek, sonek veya alt dize eşleşmeleri için LIKE kullanın. Karakter sınıflarına, alternatiflere veya niceleyicilere ihtiyaç duyduğunuzda POSIX düzenli ifadelerine (~ ve ~*) geçin. Düzenli ifadeler daha güçlüdür ancak temel kalıplar için genellikle LIKE'tan daha yavaştır.

Evet. AI Metinden SQL'e dönüştürücüler gibi yardımcılar, "e-postasında 'acme' geçen müşterileri bul" gibi komutları '%acme%' benzeri bir isimle çevirir ve joker karakter mantığını açıklayarak anlık raporlamayı hızlandırır.

Üretken yapay zeka, sorgu planını inceler, önde gelen joker karakterli LIKE aramaları için bir trigram dizini (pg_trgm) önerir ve dizin kullanımını engelleyen kalıpları yeniden yazar. Bu, tam tablo taramalarını büyük tablolarda milisaniyelik aramalara dönüştürür. PostgreSQL tablolar.

Bu yazıyı şu şekilde özetleyin: