SQL Sorgularında Eşleşen Desen

Yanlış Eşleme için Wildcards kullanma

SQL kalıp eşleştirmesi, aradığınız kelimeyi veya deyimi tam olarak bilmiyorsanız, verideki kalıpları aramanıza olanak tanır. Bu tür bir SQL sorgusu, tam olarak belirtmek yerine, bir desenle eşleşen joker karakterleri kullanır. Örneğin, "C%" joker karakterini büyük harfle başlayan herhangi bir dizeyle eşleştirmek için kullanabilirsiniz.

LIKE İşletmecisini Kullanma

Bir SQL sorgusunda joker ifade kullanmak için, WHERE yan tümcesinde LIKE işlecini kullanın ve deseni tek tırnak işaretleri içine alın.

Basit Arama Yapmak için% Wildcard Kullanımı

Veritabanınızdaki herhangi bir çalışanı C harfiyle başlayan bir soyadı ile aramak için aşağıdaki Transact-SQL deyimini kullanın:

SELECT * FROM çalışanlarından WHERE last_name LIKE 'C%'

NOT Anahtar Kelimesini Kullanarak Kalıp Kaldırma

Desende uymayan kayıtları seçmek için NOT anahtar sözcüğünü kullanın. Örneğin, bu sorgu, adı C ile başlayamayan tüm kayıtları döndürür.

SELECT * FROM çalışanlarından WHERE last_name 'C%' GİBİ DEĞİL

% Wildcard 2 Kullanarak Her Yerde Bir Desen Eşleştirme

Belirli bir deseni herhangi bir yerde eşleştirmek için % joker karakterinin iki örneğini kullanın. Bu örnek, soyadında bir C içeren tüm kayıtları döndürür:

SELECT * Çalışanlardan WHERE last_name LIKE '% C%'

Belirli bir pozisyonda bir desen maç bulma

Verileri belirli bir konuma döndürmek için _ joker karakterini kullanın. Bu örnek yalnızca soyadı, soyadı sütunun üçüncü konumunda gerçekleşirse eşleşir:

SELECT * çalışanlardan WHERE last_name LIKE '_ _C%'

Transact SQL'de desteklenen Wildcard ifadeleri

Transact SQL tarafından desteklenen birkaç joker ifade vardır:

Karmaşık Desenleri İçin Joker Kartları Birleştirme

Daha gelişmiş sorgulamalar yapmak için bu joker karakterleri karmaşık modellerde birleştirin. Örneğin, alfabenin ilk yarısından itibaren bir harfle başlayan ancak sesli harfle bitmeyen isimleri olan tüm çalışanlarınızın listesini oluşturmanız gerektiğini varsayalım. Aşağıdaki sorguyu kullanabilirsiniz:

SELECT * FROM çalışanlarından WHERE last_name LIKE '[am]% [^ aeiou]'

Benzer şekilde, soyadının dört örneğini kullanarak tam olarak dört karakterden oluşan tüm çalışanların listesini oluşturabilirsiniz:

SELECT * FROM çalışanlarından WHERE last_name LIKE '____'

Anlayabileceğiniz gibi, SQL kalıp eşleştirme yeteneklerinin kullanımı, veritabanı kullanıcılarına basit metin sorgularının ötesine geçme ve gelişmiş arama işlemleri yapma yeteneği sunar.