我的表中有一个具有文本数据类型的字段。
以下两个sql查询的性能是否存在差异:
select * from tablename where fieldname="xyz%";
select * from tablename where fieldname="%zyx";
如果我们要实现这些查询的执行,我认为我们需要这样做:
我们必须匹配两个正则表达式(xyz* 和 *zyx)。
我们必须从头开始检查字符串字符。
对于第一个查询,我们必须读取前三个字符以查看是否匹配,但对于第二个查询,我们必须读取直到我们得到字符串的结尾以确定是否发生匹配。但是,如果我们将字符串的长度存储在某个地方,我们可以直接读取最后三个字符,从而获得与第一种情况类似的性能。
我的问题是 mysql 和 oracle 等商业数据库在执行查询的性能上是否有任何差异。