To pytanie ma również odpowiedź , ale wymienia konkretnie DB2.
Jak wyszukiwać ciąg za pomocą LIKE
tego, który ma już %
symbol procentu ? Gdy LIKE
użyje operator %
symbole oznaczają znaków specjalnych.
To pytanie ma również odpowiedź , ale wymienia konkretnie DB2.
Jak wyszukiwać ciąg za pomocą LIKE
tego, który ma już %
symbol procentu ? Gdy LIKE
użyje operator %
symbole oznaczają znaków specjalnych.
Odpowiedzi:
Użyj nawiasów. Więc szukać 75%
WHERE MyCol LIKE '%75[%]%'
Jest to prostsze niż ESCAPE i wspólne dla większości RDBMS.
[_]
. Jak zatem uciec od otwartego nawiasu kwadratowego? Tak: [[]
. sqlserver2000.databases.aspfaq.com/…
Możesz użyć ESCAPE
słowa kluczowego z LIKE
. Po prostu wstaw żądany znak (np. „!”) Do każdego z istniejących %
znaków w ciągu, a następnie dodaj ESCAPE '!'
(lub swój znak) na końcu zapytania.
Na przykład:
SELECT *
FROM prices
WHERE discount LIKE '%80!% off%'
ESCAPE '!'
Spowoduje to, że baza danych będzie traktować 80% jako rzeczywistą część ciągu do wyszukania, a nie 80 (symbol wieloznaczny).
WHERE column_name LIKE '%save 50[%] off!%'