-
“#” 将传入的数据都当成一个字符串,会对自动传入的数据加一个双引号
-
“$” 将传入的数据直接显示生成在sql中
MyBatis排序时使用order by动态参数时需要注意,用 ${} 而不是 #
#{ } 用于CRUD
${ } 则用于模糊查询(记得加%%)
DB执行一条SQL语句的时候,默认的方式是根据搜索条件进行全表扫描,遇到匹配条件的就加入搜索集合。如果对某一字段添加索引,查询时就会先去索引列表中一次定位到特定值的行数,大大减少遍历匹配的行数,索引能增加查询的速度。
---------有索引的话,首先去索引列表中查询,而索引列表是B类树的数据结构,定位到特定值的行就会非常快,所以其查询的速度就很快
是否将所有的字段都添加索引,来加快查询?
------不行的
1.索引会占用存储空间,索引越多,使用的存储空间越多
2.插入数据,存储索引也会消耗时间,索引越多,插入数据的速度越慢
本文探讨了MyBatis中动态SQL的使用技巧,包括#与$符号的区别及应用场景,特别是在排序和模糊查询中的作用。同时,深入解析了数据库索引的工作原理,如何通过合理设置索引来提升查询效率,以及索引过多可能带来的负面影响。
26万+

被折叠的 条评论
为什么被折叠?



