我正在开发一个项目,我必须编写作业过滤器的代码。 在此,当我过滤工资时,它会发送薪水ID,如:
job_salary = array(
[0]=>3,
[1]=>4,
[2]=>5,
[3]=>6,
[4]=>7,
[5]=>8
)
我的作业表中的作业包含多个使用逗号字符串的工资。
id salary_ids
1 2,4,6
2 1,3,5
3 4,5
4 9,1
因此,如果我以数组形式搜索值3和5,如
job_salary = array(
[0]=>3,
[1]=>5
);
它应该返回第二行和第三行,因为这些行包含值3和5。
答案 0 :(得分:1)
如下所示使用它让我知道它是否有效
$values=array("1","2","3");
foreach($values as $val)
{
$query="Select * from table_name where FIND_IN_SET('".$val."',column_name)";
$result=mysql_query($query);
$data=mysql_fetch_array($result);
$dbval[]=$data['column_name'];
}
print_r($dbval);
答案 1 :(得分:0)
请再试一次这样
1)。对于Postgres MySQL:
SELECT FIND_IN_SET(5,userid) as result FROM department
2)。对于Postgres SQL: 选择 * 来自TABLENAME f 其中'searchvalue'= ANY(string_to_array(COLOUMNNAME,','))
示例
select *
from customer f
where '11' = ANY (string_to_array(customerids,','))