Вот оператор SQL для Sqlite и Android's Room, хотя это действительно относится к SQL в целом:
SELECT rowid, firstName, lastName, photoUrl, occupation, summary
FROM Connections
WHERE (:wordCriteria != "") AND title MATCH :wordCriteria
В предложении WHERE wordCriteria на самом деле является параметром, который устанавливается перед выполнением запроса. Если установлено значение ""
, запрос не вернет никаких результатов. Но даже если это ""
, означает ли это, что все строки обрабатываются так или иначе, или базовый код в базе данных распознает выражение:
wordCriteria != ""
будет ложным и не мешает обрабатывать строки?
Если все строки будут прочитаны в любом случае, есть ли способ предотвратить их чтение, если wordCriteria равен ""
? Я не хочу выполнять запрос, если для wordCriteria установлено значение ""
.