Я пытаюсь выяснить, существует ли строка в таблице. Используя MySQL, лучше сделать такой запрос:
SELECT COUNT(*) AS total FROM table1 WHERE ...
и проверьте, не равна ли сумма нулю или лучше выполнить такой запрос:
SELECT * FROM table1 WHERE ... LIMIT 1
и проверьте, были ли возвращены какие-либо строки?
В обоих запросах предложение WHERE использует индекс.