我现在在前台传入数据为
call SelectScore('430000,110000,120000,23000')CREATE DEFINER = `root`@`%` PROCEDURE `SelectScore`(
s_SchoolProvinceID varchar(200)
)
begin
select
*
from t_tdscore where s_StudentProvinceID in(s_SchoolProvinceID );
end;
s_SchoolProvinceID 这个串求解析
call SelectScore('430000,110000,120000,23000')CREATE DEFINER = `root`@`%` PROCEDURE `SelectScore`(
s_SchoolProvinceID varchar(200)
)
begin
select
*
from t_tdscore where s_StudentProvinceID in(s_SchoolProvinceID );
end;
s_SchoolProvinceID 这个串求解析
*
from t_tdscore where ','+cast(s_StudentProvinceID as varchar(100))+',' in(','+s_SchoolProvinceID+',' );
select
*
from t_tdscore where FIND_IN_SET(s_StudentProvinceID,s_SchoolProvinceID)>0;
*
from t_tdscore where ','+cast(s_StudentProvinceID as varchar(100))+',' like','+s_SchoolProvinceID+',' ;
恩 谢谢树锅指点 忘记了。FIND_IN_SET其实更加好处理变量
`id` int(8) NOT NULL auto_increment,
`name` varchar(255) NOT NULL,
`list` varchar(255) NOT NULL,
PRIMARY KEY (`id`)
);
INSERT INTO `test` VALUES (1, 'name', 'daodao,xiaohu,xiaoqin');
INSERT INTO `test` VALUES (2, 'name2', 'xiaohu,daodao,xiaoqin');
INSERT INTO `test` VALUES (3, 'name3', 'xiaoqin,daodao,xiaohu');
select * from `test` where FIND_IN_SET('daodao',`list`); /*1 name daodao,xiaohu,xiaoqin
2 name2 xiaohu,daodao,xiaoqin
3 name3 xiaoqin,daodao,xiaohu
*/
430000 1 1
110000 2 2
120000 3 3
230000 4 4
CREATE PROCEDURE SelectScore(
s_SchoolProvinceID varchar(200)
)
begin
select
*
from t_tdscore where s_StudentProvinceID in(s_SchoolProvinceID );
end;s_SchoolProvinceID 它要传入的参数in( '430000','110000','12000')格式查询结果为id name value
430000 1 1
110000 2 2
120000 3 3求解析
s_SchoolProvinceID 请问这个格式怎么拼接