Stavek SELECT z omejitvami

Jezik SQL podpira številne uporabne operaterje, specifične za delo z besedilnimi podatki, kot so na primer primerjava nizov in ujemanje vzorcev z nadomestnimi znaki. Tabela prikazuje nekaj najpogostejših operaterjev za besedilne podatke:

Operator Pogoj Primer
= enakost nizov, loči med velikimi in malimi črkami ime_stolpca = 'abc'
!= ali <> neenakost nizov, loči med velikimi in malimi črkami ime_stolpca != 'abcd'
LIKE enakost nizov, ne loči med velikimi in malimi črkami ime_stolpca LIKE 'ABC'
NOT LIKE neenakost nizov, ne loči med velikimi in malimi črkami ime_stolpca NOT LIKE 'ABCD'


% kjerkoli v nizu za ujemanje z zaporedjem nič ali več znakov
(samo z LIKE ali NOT LIKE)
ime_stolpca LIKE '%ot%'
(se ujema z nizi 'otok', 'pot', 'potok' idr.)
_ (podčrtaj) kjerkoli v nizu za ujemanje z natanko enim znakom
(samo z LIKE ali NOT LIKE)
ime_stolpca LIKE "po_"
(se ujema z nizi 'pot', 'pok' in 'pol'; ne pa s 'po' ali 'polje')
IN (...) besedilo je na seznamu vrednosti ime_stolpca IN ('A', 'B', 'C')
NOT IN (...) besedila ni na seznamu vrednosti ime_stolpca NOT IN ('D', 'E')

Čeprav je večina implementacij podatkov baz precej učinkovita pri uporabi operaterjev za delo z besedilnimi podatki, je iskanje po celotnem besedilu najbolje prepustiti namenskim knjižnicam, kot sta na primer Apache Lucene ali Sphinx. Te knjižnice so zasnovane posebej za iskanje po celotnem besedilu, posledično pa so učinkovitejše in lahko podpirajo več različnih funkcij iskanja, vključno z internacionalizacijo in naprednimi poizvedbami.

Tabela: film
Nalagam SQL ...

Vaja 3 – naloge

  1. Izpiši vse filme Svet igrač (ang. Toy Story).
  2. Izpiši vse filme, ki jih je režiral John Lasseter.
  3. Izpiši vse filme, ki jih ni režiral John Lasseter.
  4. Izpiši naslove vseh filmov studia Pixar.
  5. Izpiši naslove vseh filmov vseh studiev, razen studia Pixar.
  6. Izpiši vse filme, katerih naslovi se začnejo na črko A.
  7. Izpiši vse filme, katerih naslovi se končajo na črko A.
  8. Izpiši vse filme, katerih naslovi vsebujejo besedo Age.
Ne gre? Klikni gumb »Rešitev«.