L'operador LIKE s'utilitza en una clàusula WHERE per cercar un patró especificat en una columna. Sovint s'utilitzen dos comodins juntament amb l'operador LIKE: - El signe de percentatge (%) representa zero, un o diversos caràcters - El signe de guió baix (_) representa un sol caràcter El signe de percentatge i el guió baix també es poden utilitzar en combinacions!
LIKE Exemple: comença amb 'a'
La següent instrucció SQL selecciona tots els clients amb un CustomerName que comença per "a":
SQL:
SELECT * FROM Customers WHERE CustomerName LIKE 'a%'
GenQL:
List<Customers> list;
list = getCustomerManager().select(CustomersFields.CUSTOMERNAME.like("a%"));
print(list);
LIKE Exemple: acaba amb 'a'
La següent instrucció SQL selecciona tots els clients amb un CustomerName que acaba amb "a":
SQL:
SELECT * FROM Customers WHERE CustomerName LIKE '%a'
GenQL:
List<Customers> list;
list = getCustomerManager().select(CustomersFields.CUSTOMERNAME.like("%a"));
print(list);
LIKE Exemple: amb subcadena
La següent instrucció SQL selecciona tots els clients amb un CustomerName que tenen "o" en qualsevol posició:
SQL:
SELECT * FROM Customers WHERE CustomerName LIKE '%or%';
GenQL:
List<Customers> list;
list = getCustomerManager().select(CustomersFields.CUSTOMERNAME.like("%or%"));
print(list);
LIKE Exemple: amb char
La següent instrucció SQL selecciona tots els clients amb un CustomerName que tenen "r" a la segona posició:
SQL:
SELECT * FROM Customers WHERE CustomerName LIKE '_r%'
GenQL:
List<Customers> list;
list = getCustomerManager().select(CustomersFields.CUSTOMERNAME.like("_r%"));
print(list);
LIKE Exemple: amb almenys 3 caràcters
La següent instrucció SQL selecciona tots els clients amb un CustomerName que comenci per "a" i tingui almenys 3 caràcters:
SQL:
SELECT * FROM Customers WHERE CustomerName LIKE 'a__%'
GenQL:
List<Customers> list;
list = getCustomerManager().select(CustomersFields.CUSTOMERNAME.like("a__%"));
print(list);
LIKE Exemple: amb inici i final
La següent instrucció SQL selecciona tots els clients amb un ContactName que comença amb "a" i acaba amb "s":
SQL:
SELECT * FROM Customers WHERE CustomerName LIKE 'a%a'
GenQL:
List<Customers> list;
list = getCustomerManager().select(CustomersFields.CUSTOMERNAME.like("a%s"));
print(list);
LIKE Exemple: "No m'agrada"
La següent instrucció SQL selecciona tots els clients amb un CustomerName que NO comença amb "a":
SQL:
SELECT * FROM Customers WHERE CustomerName NOT LIKE 'a%'
GenQL:
List<Customers> list;
list = getCustomerManager().select(CustomersFields.CUSTOMERNAME.notLike("a%"));
print(list);