Mam następujące dane w tabeli
PriceOrderShipped
PriceOrderShippedInbound
PriceOrderShippedOutbound
W SQL muszę napisać zapytanie, które wyszukuje ciąg w tabeli. Szukając łańcucha, należy ignorować wielkość liter. Dla poniższego zapytania SQL
SELECT DISTINCT COL_NAME FROM myTable WHERE COL_NAME LIKE '%PriceOrder%'
podaje wszystkie powyższe dane, natomiast
SELECT DISTINCT COL_NAME FROM myTable WHERE COL_NAME LIKE '%Priceorder%'
nie daje.
Na przykład. kiedy wyszukuję „PriceOrder” lub „PriceOrder”, działa, ale „priceorder” lub „Priceorder” nie działa. Próbowałem z poniższym zapytaniem przy użyciu funkcji Sortuj, ale nie działa. Daj mi znać, gdzie idę źle.
SELECT DISTINCT COL_NAME FROM myTable WHERE
COL_NAME COLLATE latin1_general_cs LIKE '%Priceorder%'
sql
sql-server
case-insensitive
sql-like
ignore-case
fala uderzeniowa
źródło
źródło
Odpowiedzi:
Użyj czegoś takiego -
lub
źródło
UPPER
lub wielkośćLOWER
liter, a następnie używającLIKE
do wyszukiwania?Zobacz to podobne pytanie i odpowiedz na wyszukiwanie z uwzględnieniem wielkości liter - serwer SQL ignoruje wielkość liter w wyrażeniu gdzie
Spróbuj użyć czegoś takiego jak:
źródło
Lubię to.
W postgresql.
źródło
Powinieneś prawdopodobnie użyć
SQL_Latin1_General_Cp1_CI_AS_KI_WI
jako swojego porównania. W pytaniu podanym w pytaniu rozróżniana jest wielkość liter.Możesz zobaczyć listę zestawień tutaj .
źródło