0

我有一个具有以下架构的表,它应该接受字符串输入并给我输出:

创建表 tblA (sName varchar(20), id int);

从 tblA 中选择 *;

insert into tblA (sName, id) values ('Bay', 2), ('Kay', 3), ('May', 4);

select distinct sName
from tblA
where id in ("3,4");

O / P:凯

我需要:凯梅

有一个发送字符串的应用程序,MySQL 需要读取该字符串解析并给出输出。应用程序无法发送整数值。在应用程序中输入只有 id。无论我输入什么,它都会被转换成字符串并传递给查询。我的输入将始终以逗号分隔,例如 (4,5,6)。每个 4、5、6 都是 id。但是应用程序将 (4,5,6) 作为单个字符串发送。

4

1 回答 1

1

尝试

select sName
from tblA
where id in (3, 4)

即从参数中删除引号in

编辑以下 OP 的评论

select sName
from tblA
where id in ('3', '4')

即单引号并引用id的每个可能值。

于 2013-09-26T17:02:52.640 回答