ignorowanie wielkosci liter w zapytaniu - hiberate

0

hej,

w sqlu jest slowko 'ilike' dzieki ktoremu moge ignorowac wielkosc liter. tzn jak chce (np) wyciagnac z tabeli osoba wszystkich tomkow/Tomkow/TOMKOW (a mam tylko 3 pierwsze litery imienia) to dam:

select imie from osoba where imie ilike 'tom%'.

czy jest w hsql jakis odpowiednik tego? bo 'like' dziala jak w sqlu. ale nie moge znalezc niczego co odpowiadaloby ilike.

jakies sugestie?

pzdr,
misty

0

Nie wiem co to ilike ale omzesz zrobic to tak, ze kolumne tekstowa opakujesz w tolower() lub toupper() (czy jak sie to tam nazywa) i odpowiednio albo wielkie albo male litery jakos warunek w like, powinno isc.

0

ilike ignoruje wielkosc liter. czyli wyszuka Ci i rekordy Tomek/tomek/TOMEK/tOmEk, itd

tolower() i toupper() dzialaja przeciez tak, ze zamieniaja na male/duze litery. a ja nie to chce osiagnac, tylko to co opisalam wyzej - wyciagnac 'wszystkich tomkow', niezaleznie od tego jakich (duzych/malych/naprzemian) liter uzyto w tym wyrazie.

pzdr

0

ilike nie jest chyba w standardzie.
Masz 3 rekordy i kazdy ma odpowiednio w kolumnie: Tomek, TOMEK, ToMeK i chcesz wyszukac wszystkich co sie zaczynaja na 'TOM' bez wzgledy na woielkosc znakow. Zatem:

  1. zamieniasz wartsci w kolumnie na uppercase i masz teraz: TOMEK, TOMEK, TOMEK
  2. like TOMEK like 'TOM%' jest prawda, zatem takie zapytanie:
    where to_upper(columna) like 'TOM%'
    zwroci wszystkie te rekordy.
    Moim zdaniem robi to co chcesz.
0

select kolumna where to_upper(kolumna) like 'TOM%'
zamieni na wielkie znaki tylko w warunku, zwrocona wartosc bedzie jednak miala oryginalne znaki.

0

nie chce zmieniac w bazie rekordow na male albo duze litery, uwazam to za troche bez sensu.
kurde, szkoda bo myslalam ze bedzie cos podobnego do ilike.

niemniej jednak-dzieki za odpowiedzi i czas!

pzdr,
misty

0

Dziewczyno, nie rozumiesz. Zmieniasz na wielkie znaki tylko w warunku where w zapytaniu pobierajacym dane, fizycznie dane w bazie beda jakie sobie tylko zyczysz. Przykro mi ale jak nie rozumiesz tego co sie do Ciebie mowi to chyba jestes na zlym forum.

0
misty napisał(a)

ilike ignoruje wielkosc liter
'T' i 't' to zupełnie inne znaki - co rozumiesz przez ignorowanie różnicy między nimi?

misty napisał(a)

tolower() i toupper() dzialaja przeciez tak, ze zamieniaja na male/duze litery. a ja nie to chce osiagnac,
A myślisz, jak działa ilike...

1 użytkowników online, w tym zalogowanych: 0, gości: 1