Есть ли способ получить проверку математического равенства двух операторов SQL?
У меня есть два оператора SQL:
- SQL_STATEMENT_1
- SQL_STATEMENT_2
Выполнение обоих операторов над данными и сравнение результатов не помогает вообще.
Математика, стоящая за утверждениями, должна оцениваться, как это делает решатель уравнений.
Вне моего вопроса находятся такие вещи, как:
- сравнения, отличные от равенства (больше, меньше, чем, как, ...)
- хранимые процедуры или триггеры
- Общие табличные выражения (С)
В объеме:
- Подвыбирает: ГДЕ other_id IN (ВЫБЕРИТЕ id ИЗ ДРУГОГО ГДЕ ...)
- JOINS
select * from foo where id = 4
наверняка будет иметь тот же план выполнения, что иselect * from foo where id = 2
select * from foo where id = 4
и select * from foo where id = 2
может быть два разных плана выполнения, если 1) статистика индекса не обновлена и 2) даже если статистика индекса актуальна, распределение ключей по идентификатору является односторонним (предоставленный идентификатор не является уникальным ключом).