1

如果表中的特定字段包含子字符串,我正在尝试返回 true 或 false(或 yes/no 等)的值作为选择的一部分。

  1. 选择 ID、姓名以及是否订阅了某个人。
  2. 一个名为的字段emailList有一个逗号分隔的名称列表,用于检查请求者是否已订阅。子字符串搜索的结果应该在另一个字段中产生真/假值作为结果。

基本查询如下所示:

SELECT
    id,<...>,name
FROM
    table

在 <...> 区域,我想要的东西相当于:

`emailList` contains @input ? "Yes" : "No"

我不知道如何做到这一点来挽救我的生命。我猜它可以通过其他方式完成,但这似乎是一个很好的学习机会。有什么建议么?

4

1 回答 1

10

使用IF()

SELECT
    id,
    IF(emailList LIKE '%string%', 'Yes', 'No') AS OnEmailList,
    name
FROM
    table

只需将“字符串”一词替换为您要查找的搜索词或您选择的服务器端编程语言中的变量。

于 2013-04-25T23:55:04.530 回答