比如有一个搜索功能 姓名,年龄,性别
先写一句 sql=select * from A where 1=1 这样就可以向后接了
先写一句 sql=select * from A where 1=1 这样就可以向后接了
因为1=1是永真的表达式。
如果姓名不为空则sql=sql+and name=姓名
如果年龄不为空则sql=sql+and ..................
如果性别不为空则sql=sql+and........
如果三项都为空则
最后执行的语句是select * from A where 1=1 这样也不会出错
如果姓名不为空则sql=sql+and name=姓名
如果年龄不为空则sql=sql+and ..................
如果性别不为空则sql=sql+and........
如果三项都为空则
最后执行的语句是select * from A where 1=1 这样也不会出错
本文介绍了一种使用SQL语句动态拼接的方法,通过初始化SQL语句为“select * from A where 1=1”,之后根据具体条件动态添加过滤条件,确保即使所有条件为空时SQL语句依然有效。
1088

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



