İki SQL ifadesinin matematiksel eşitliğini kontrol etmenin bir yolu var mı?
İki SQL deyimim var:
- SQL_STATEMENT_1
- SQL_STATEMENT_2
Verilerin her iki ifadesini de çalıştırmak ve çıktıyı karşılaştırmak hiç yardımcı olmuyor.
İfadelerin arkasındaki set matematiğinin, bir denklem çözücü gibi değerlendirilmesi gerekir.
Sorumun kapsamı dışında:
- eşitlik dışındaki diğer karşılaştırmalar (LIKE'den daha büyük, daha küçük, ...)
- saklı yordamlar veya tetikleyiciler
- Ortak Tablo İfadeleri (WITH)
Bu kapsamda:
- Alt seçimler: WHERE other_id IN (Diğer NEREDEN KİMİ SEÇ ...)
- KATILIYOR
select * from foo where id = 4
kesinlikle aynı yürütme planına sahip olacakselect * from foo where id = 2
select * from foo where id = 4
ve olması mümkündür. select * from foo where id = 2
(kimliğin benzersiz bir anahtar olmaması şartıyla).