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