首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >mySQL :如何在SELECT查询的CASE语句中使用PDO绑定参数?

问mySQL :如何在SELECT查询的CASE语句中使用PDO绑定参数?
EN

Stack Overflow用户
提问于 2017-02-14 17:12:17
回答 1查看 52关注 0票数 0

在mySQL SELECT查询中,我希望根据WHERE子句中的PDO约束搜索参数条件选择客户端表的行。像WHERE client = :searchStr这样的东西

有两种情况: A)搜索参数包含字符串或B)搜索参数为空

在A的情况下,参数:searchStr包含例如客户编号'123‘。

因此,如果客户端在表中,我使用:WHERE client = :searchStr和查询返回客户端123。

在B的情况下,字符串是空的。因此,我不使用WHERE子句,查询只是返回表中的所有客户端

当然我可以写一个IF ..SELECT查询外部的ELSE语句。但是如何在SELECT查询中使用CASE语句对其进行编码呢?

就像这样

代码语言:javascript
复制
CASE   
   WHEN :searchStr = '' THEN WHERE client = :searchStr
END

不工作

EN

回答 1

Stack Overflow用户

发布于 2017-02-14 17:13:19

代码语言:javascript
复制
WHERE (:searchStr = '' or client = :searchStr)

或者,如果:searchStr可以是NULL,而不仅仅是emprty字符串,则使用

代码语言:javascript
复制
WHERE (:searchStr is null or client = :searchStr)
票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/42221959

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档