此查询仅返回一行
Set @id='2,3,4,5,6,7,8,9';
Set @typers=1;
Select * from Employee where (@typers=1 and pkEmpId in (@id));
如果我们直接在 IN 查询中分配 2,3,4,5,6,7,8,9 ,它会起作用,我知道这是因为“'”。
但是当我在过程中将值作为参数传递时,我遇到了同样的问题
call CalculateStandardFinalRun('0','4','1900-01-01 00:00:00','1900-01-01 00:00:00','5','1','2,3,4,5,6,7,8,9');
如何获取所有值
最佳答案
我认为你应该尝试一下这个
Select * from Employee where (@typers=1 and FIND_IN_SET(pkEmpId, @id)));
关于mysql - MY Sql IN Query in where 子句给出一行作为输出,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/16461280/