我有一个具有以下模式的表,该表应该接受字符串输入并输出给我:
创建表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:
y
我需要:
y
可以
有一个发送String的应用程序,而MySQL需要读取该字符串解析并给出输出。应用程序无法发送整数值。在应用程序中,输入仅是id。无论我输入什么,它将被转换为String并将被传递给查询。我的输入将始终用逗号分隔,例如(4,5,6)。每个4、5、6是ID。但是应用程序将(4,5,6)作为单个字符串发送。
最佳答案
尝试
select sName
from tblA
where id in (3, 4)
即从
in
的参数中删除引号根据OP的评论进行编辑
select sName
from tblA
where id in ('3', '4')
即单引号并引用id的每个可能值。
关于mysql - 该表以输入作为字符串并进行解析并给出输出,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/19034214/