专栏名称: 鸭哥聊Java
回复关键字:666 ,领取免费简历模板,Java面试题,Java编程视频等。本号内容涵盖Java源码,JVM源码,Dubbo源码,Spring源码,Spring Cloud微服务架构,分布式高并发架构技术,MySQL性能调优等。
今天看啥  ›  专栏  ›  鸭哥聊Java

SQL中为什么不要使用1=1?

鸭哥聊Java  · 公众号  ·  · 2024-08-12 14:00

文章预览

嗨,我是鸭哥。 今天来聊聊“SQL中为什么不要使用1=1”? 相信大家在工作中可能都遇到过在SQL中看到1=1的情况。这个在老项目里相当常见,我自己也曾经写过。那时候觉得没啥影响,也就没在意。 后来随着工作经验的增加,对这一块有了更深的理解。 咱们一起来看看,为什么这个1=1会被用在SQL语句里,它到底有什么影响。 为什么会使用 1=1? 在Java开发中,MyBatis框架非常流行。MyBatis在进行条件判断时,会使用 标签来动态拼接SQL条件,而使用1=1的好处是避免在第一个条件前加上AND。 比如这样的代码: SELECT * FROM table WHERE 1 = 1 < if test = "username != null" > AND username = #{username} if > < if test = "age > 0" > AND age = #{age} if > 这个例子看起来很方便,使用1=1是为了保证后面的条件能够自由加上AND而不需要担心SQL语句的语法错误。但这只是表面上 ………………………………

原文地址:访问原文地址
快照地址: 访问文章快照
总结与预览地址:访问总结与预览