-4
我想问问使用Synonym还是使用表的实际名称来调整SQL查询的性能更好?如何调整Oracle SQL查询
我想问问使用Synonym还是使用表的实际名称来调整SQL查询的性能更好?如何调整Oracle SQL查询
同义词是实际数据库对象的标签。它们被用作抽象层。主要用于引用其他模式或远程数据库中的对象。使用同义词意味着当我们在不同的环境中移动时,我们不必更换代码。
使用同义词的性能受到追捧。在查询优化器将寻找在这个顺序匹配的对象给出对象名称:
所以,如果我们目前的模式有一个表T23
数据库将使用在我们的查询,而不是通过公共同义词T23
引用的表。
根据数据字典的状态,查找的成本范围应该从完全可以忽略不计到可以忽略的程度。
使用同义词不会影响实际查询的性能。也就是说,这两个查询将具有相同的执行配置文件:
select * from synonym_of_some_table;
select * from [email protected]_db;
“即使它在表中的数据是非常大的”?
是的,即使表中的数据非常大。使用同义词不会影响以任何方式检索数据。同义词不像意见,它可以使调整困难得多。
你有没有注意到有什么区别?查询计划告诉你什么? – rene
我假设差异会在几微秒甚至纳秒的范围内。 –
@Wernfried Domscheit即使它在表中的数据非常大 – lena