มีวิธีการตรวจสอบความเท่าเทียมกันทางคณิตศาสตร์ของคำสั่ง SQL สองคำสั่งหรือไม่?
ฉันมีคำสั่ง SQL สองคำ:
- SQL_STATEMENT_1
- SQL_STATEMENT_2
การเรียกใช้ทั้งคำสั่งเกี่ยวกับข้อมูลและการเปรียบเทียบผลลัพธ์ไม่ได้ช่วยอะไรเลย
ชุดคณิตศาสตร์เบื้องหลังคำสั่งจะต้องได้รับการประเมินเช่นเดียวกับตัวแก้สมการ
ขอบเขตคำถามของฉันเป็นสิ่งที่ชอบ:
- เปรียบเทียบอื่น ๆ แล้วความเท่าเทียมกัน (มากกว่า, น้อยกว่า, LIKE, ... )
- ขั้นตอนการจัดเก็บหรือทริกเกอร์
- นิพจน์ตารางทั่วไป (ด้วย)
ในขอบเขต:
- Subselects: WHERE other_id IN (เลือก id จาก other WHERE ... )
- จับ
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) แม้ว่าสถิติดัชนีจะทันสมัยการแจกแจงคีย์ของ id จะไม่สมดุลกัน (รหัสที่ระบุไม่ใช่รหัสที่ไม่ซ้ำกัน)