Где условие перестановки в SQL

введите описание изображения здесь

Я хочу выбрать те записи, которые содержат только «1» и «2» и «1,2» и «2,1»

0

Решение

хороший ответ о создании новой таблицы из jarlh

Вы можете сделать новый стол jobs_images с колоннами:

id - primary
id_job
id_image

И выберите, используя объединение для примера:

SELECT * FROM `jobs` LEFT JOIN `jobs_images` ON (`jobs_images`.`id_job`=`jobs`.`id`)
WHERE `jobs_images`.`id_image` IN (1,2,3)
0

Другие решения

Наконец, я использовал этот код, чтобы сделать запрос. И я решил сохранить данные в поле изображения в формате заказа.

  <?php
echo "<pre>";
$str = "1,2,3";
function getCombinations($array) {
//initalize array
$results = [[]];
//get all combinations
foreach ($array as $k => $element) {
foreach ($results as $combination)
$results[] =  $combination + [$k => $element];
}
//return filtered array
return array_values(array_filter($results));
}
$arr = getCombinations(explode(",", $str));
$lastElement = end($arr);
foreach($arr as $v){
$sep=",";
if($lastElement == $v){
$sep='';
}
$condition .= "'".implode(",", $v)."'".$sep;
}
echo $qry = "select * from job_detail where image in (".$condition.")";
?>
0