您好, 欢迎来到 !    登录 | 注册 | | 设为首页 | 收藏本站

当参数有时可以为NULL时,如何参数化SQL查询?

当参数有时可以为NULL时,如何参数化SQL查询?

解决方案是使用ISO / ANSI标准-安全NULL比较:

WHERE Column IS NOT DISTINCT FROM ?

并非所有数据库支持功能,因此您还可以使用:

WHERE Column = ? OR (Column IS NULL AND ? IS NULL)

如果您不愿意两次传递参数,则可以在FROM子句中包含它:

. . .
FROM . . . CROSS JOIN
     (SELECT ? as compColumn) params
WHERE (Column = params.compColumn0 or (Column IS NULL and params.compColumn IS NULL)
SQLServer 2022/1/1 18:39:30 有424人围观

撰写回答


你尚未登录,登录后可以

和开发者交流问题的细节

关注并接收问题和回答的更新提醒

参与内容的编辑和改进,让解决方法与时俱进

请先登录

推荐问题


联系我
置顶