sql - 如何根据 Microsoft Transact SQL 中的参数值构造 where 子句?
问题描述
我有一种情况,如果我传递一个参数@param
,那么我需要我的where
子句
where field1 = @param
但是,根据 的值@param1
,where
子句可能是
where field1 in (... several possibilities)
此外,该where
子句可以是
where field1 is in (... several possibilities)
or field1 like ...%
因此,根据我通过的内容,该where
子句可以具有多个“个性”。你怎么做到这一点?
我看着创建一个字符串
@sqlquery = "select whatever from wherever where ..."
然后用 执行它sp_executesql
,但我仍然不确定如何执行此操作。这似乎是我需要进入的方向。
解决方案
切换字段和参数,这样就可以了
where @param like '%field1%'
推荐阅读
- scala - scala 反射 API Type.dealias 有什么作用?
- python - 字符串操作:python 中的字符串 = aaabbcccaa 到 a3b2c3a2
- php - php准备好的语句和正确使用
- javascript - 如何在 Chart.js 或 Angular 2 中的任何其他 JavaScript 库中绘制圆形进度条
- java - EditText 在 Moto 360 上无法正常工作
- javascript - 在我的代码中,我正在尝试创建房间,但我不知道为什么每次它都会用新房间创建旧房间
- javascript - Sails-mongo 的 Sails.js“无法拆除 ORM 钩子”错误
- python - 通过 SSH 配置多台机器的集中式 python 脚本
- android - Android 是否会在更新时清理应用缓存?
- java - Spring initializr 生成的 Spring Boot 应用程序在 eclipse 上运行时出错