繁体   English   中英

如何在逗号分隔的列mysql中从逗号分隔的字符串中搜索

[英]How to search from comma separated string in comma separated column mysql

我正在从事一个项目,我必须为工作过滤器编码。 在这种情况下,当我过滤工资时,它会在数组中发送工资 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。

像下面一样使用它让我知道它是否有效

$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).对于 Postgres MySQL :

SELECT FIND_IN_SET(5,userid) as result FROM department

2).对于 Postgres SQL : select * from TABLENAME f where 'searchvalue' = ANY (string_to_array(COLOUMNNAME,','))

示例

select * 
from customer f
where '11' = ANY (string_to_array(customerids,','))

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM