关于一个存储过程的条件表达式
分类: SQL传入参数: @ID INT
若 @ID 为 0 表示全部,否则只找出列ID值相等的。
表达式:WHERE ?
where ID=(case @ID when 0 then ID else @ID end)
高明,呵呵
更加高明的是:where @ID IN (0, ID)
本文介绍了一种SQL存储过程中灵活使用条件表达式的方法。通过案例展示了如何根据传入参数的不同来调整查询条件,实现既能查询所有记录也能精确查找特定记录的功能。文中给出了两种巧妙的WHERE子句写法。
传入参数: @ID INT
若 @ID 为 0 表示全部,否则只找出列ID值相等的。
表达式:WHERE ?
where ID=(case @ID when 0 then ID else @ID end)
高明,呵呵
更加高明的是:where @ID IN (0, ID)

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