Bu yaygın bir yanlış kanı yapı için
b IN (x, y, z)
o (x, y, z)
kümesi temsil ettiğini bu. O değil.
ziyade,
(b = x OR b = y OR b = z)
SQL vardır ama bir veri yapısı için sadece sözdizimsel şeker: tablo. Arama metni değerlerini bir küme olarak sorgulamak isterseniz, bunları bir tabloya koyun. JOIN
arama metnini tablonuza LIKE
kullanarak JOIN
tablosuna JOIN
yapabilirsiniz.
WITH Places (Name)
AS
(
SELECT Name
FROM (
VALUES ('Ballymeade Country Club'),
('Ballymena Candles'),
('Bangers & Mash Cafe'),
('Bangebis')
) AS Places (Name)
),
SearchText (search_text)
AS
(
SELECT search_text
FROM (
VALUES ('Ballymena'),
('Banger')
) AS SearchText (search_text)
)
SELECT *
FROM Places AS P1
LEFT OUTER JOIN SearchText AS S1
ON P1.Name LIKE S1.search_text + '%';
Gerçekten de işe yarayabilir, ancak normal ifadeler normaldir .. –
buna benzer nedir? – Breezer
'' ile benzer 'standartta regexp_like' ile değiştiriliyor. Göreceğiz. – Donnie