У меня есть огромная таблица для работы. Я хочу проверить, есть ли какие-то записи, parent_id которых равно моему передаваемому значению. в настоящее время я реализую это, используя "select count (*) из mytable, где parent_id =: id"; если результат > 0, означает, что они существуют.
Потому что это очень огромная таблица, и мне все равно, сколько именно записей существует, я просто хочу знать, существует ли она, поэтому я считаю, что count (*) немного неэффективен.
Как реализовать это требование самым быстрым способом? Я использую Oracle 10.
#В соответствии с hibernate Советы и подсказки https://www.hibernate.org/118.html#A2
Предлагается написать вот так:
Целое число count = (целое число) session.createQuery( "select count (*) from...." ). uniqueResult();
Я не знаю, что это за волшебство uniqueResult() здесь? почему он делает это быстро?
Сравнить с "выберите 1 из mytable, где parent_id = passId и rowrum < 2", что более эффективно?