Page 169 - Corso di PHP - Livello base
P. 169
cercata servono infatti per dare una “connotazione”
all'operatore LIKE, nel senso che immettendolo prima della
variabile, dichiariamo che potrebbero esserci altri caratteri
prima della parola che abbiamo cercato, e invece
immettendolo dopo non facciamo altro che dichiarare che
potrebbero esserci altri caratteri subito dopo.
Ma vediamo un esempio concreto. Supponiamo di avere tre
post, il primo che si intitola “Ciao”, il secondo che si intitola
“Ciao a tutti!” e il terzo “Un ciao ai miei amici!”. E supponiamo
anche di avere alcune query di ricerca (per semplicità
operiamo soltanto sul titolo):
$query = "SELECT * FROM Post WHERE Titolo = '$parolacercata'";
$query = "SELECT * FROM Post WHERE Titolo LIKE '$parolacercata'";
$query = "SELECT * FROM Post WHERE Titolo LIKE '%$parolacercata'";
$query = "SELECT * FROM Post WHERE Titolo LIKE '$parolacercata%'";
$query = "SELECT * FROM Post WHERE Titolo LIKE '%$parolacercata%'";
Supponiamo adesso di cercare la parola “ciao”. Vediamo i
risultati per i cinque casi che abbiamo elencato sopra:
-.Caso 1: viene trovato soltanto il post intitolato “Ciao”,
perché abbiamo chiesto informazioni precise, ovvero i post
il cui titolo è esattamente uguale alla parola cercata
(maiuscole e minuscole non contano perché SQL non è
case sensitive come abbiamo avuto già modo di
rimarcare);
-.Caso 2: è del tutto equivalente al caso 1 (quindi è
praticamente inutile usare LIKE da solo);
-.Caso 3: vengono trovati i post che contengono la parola
169