Hirdetés

Keresés

Új hozzászólás Aktív témák

  • WonderCSabo
    félisten

    JPA-val lehet olyat csinálni, hogy egy táblában úgy keresek ki rekordokat, hogy a szelekcióban 1 attribútum van, és annak az értékének csak egy része ismert? Mondjuk adott egy városnév egy része, pl 'bud', és minden rekordot szeretnék megkapni, ahol a városnévben van olyan rész, hogy 'bud'. Próbáltam rákeresni neten, de angolul nem tudtam a megfelelő kulcsszavakat kitalálni ehhez. :D

    Persze meg lehetne úgy oldani, hogy minden rekordot kiolvasok, és végigiterálva a listán megnézem, hogy mire illeszkedik ez a feltétel, de ha a JPA-ban lenne ilyen, akkor az biztos erőforrástakarékosabb megoldás lenne.

    Mondjuk ahhoz, hogy ez működjön, minden adatbázisrekordot be kell olvasni ígyis-úgyis, szóval háttértár műveleteken a JPA-s megoldás sem tudna spórolni, a memóriaműveletek költsége meg ehhez képest elenyésző.

    Hogyan csinálják pl IMDB-nél azt, hogy beírom egy film címének egy részét, és kvázi azonnal mutatja azt a szövegrészletet tartalmazó filmcímek listáját? IMDB-t használnak (In Memory Database)? :D

    Izé, a sima LIKE feltétel nem pont erre való JPQL-ben? Pl. city LIKE '%bud%'.

    Szerk.: Ha csak elejére illeszkedés kell: city LIKE 'bud%'

  • #39560925
    törölt tag

    JPA-val lehet olyat csinálni, hogy egy táblában úgy keresek ki rekordokat, hogy a szelekcióban 1 attribútum van, és annak az értékének csak egy része ismert? Mondjuk adott egy városnév egy része, pl 'bud', és minden rekordot szeretnék megkapni, ahol a városnévben van olyan rész, hogy 'bud'. Próbáltam rákeresni neten, de angolul nem tudtam a megfelelő kulcsszavakat kitalálni ehhez. :D

    Persze meg lehetne úgy oldani, hogy minden rekordot kiolvasok, és végigiterálva a listán megnézem, hogy mire illeszkedik ez a feltétel, de ha a JPA-ban lenne ilyen, akkor az biztos erőforrástakarékosabb megoldás lenne.

    Mondjuk ahhoz, hogy ez működjön, minden adatbázisrekordot be kell olvasni ígyis-úgyis, szóval háttértár műveleteken a JPA-s megoldás sem tudna spórolni, a memóriaműveletek költsége meg ehhez képest elenyésző.

    Hogyan csinálják pl IMDB-nél azt, hogy beírom egy film címének egy részét, és kvázi azonnal mutatja azt a szövegrészletet tartalmazó filmcímek listáját? IMDB-t használnak (In Memory Database)? :D

    "Hogyan csinálják pl IMDB-nél azt, hogy beírom egy film címének egy részét, és kvázi azonnal mutatja azt a szövegrészletet tartalmazó filmcímek listáját? IMDB-t használnak (In Memory Database)?"

    Most direkt kipróbáltam. Trükkösek, ez csak akkor működik, ha a filmcím első két szavából kezdem el valamelyiket gépelni. :D

    Módosítom a kérdésem: JPA-val meg lehet oldani, hogy egy attribútum értékének csak az elejének egy része ismert, és a szelekció azokat a rekordokat adja vissza, amik az adott attribútumban így kezdődnek? Az is elég, segítség lenne, ha valaki megmondaná milyen kulcsszavakkal érdemes ilyen probléma esetén keresni. Ilyenekkel próbáltam, hogy:
    - jpa select partial attribute
    - jpa select by partially known attribute

    de nem találtam semmi használhatót.

Új hozzászólás Aktív témák