удалить дубликаты Camma из запроса MySQL

0

Я пытаюсь получить данные с mulyiple значением с оператором Mysql IN, но проблема, которую я получаю во много (,,).

Вот мой запрос:

$get_id = "select rel_blog from pages";
$resu = mysql_query($get_id);
$p_id="";
$rel_b="";
$i = 1;
while ($page_id = mysql_fetch_array($resu)){

   $p_id.= $page_id['page_id']; 
  $rel_b.= $page_id['rel_blog']; 

  } 
$p_id."<br>";
echo $rel_b."<br>";

echo $getblog = "SELECT * FROM pages WHERE rel_blog IN ($rel_b) order by add_date desc limit 7";

Выход Ouery Как это, это неправильная форма, поэтому, пожалуйста, помогите мне.

SELECT * FROM pages WHERE rel_blog IN (, 114,93,126108default ,, default ,, default, default ,, default, default ,,,, default, default ,, default,, по умолчанию ,,,,,,,,,,,,, 123,145,144,148,81,107default ,,, по умолчанию ,,, 145,138,118default ,,, по умолчанию ,,,, по умолчанию ,,,, по умолчанию ,,,, по умолчанию ,, 118default ,, по умолчанию ,,,, умолчанию ,,, ,, по умолчанию, по умолчанию ,,,, по умолчанию ,,,,, по умолчанию, по умолчанию ,,, по умолчанию ,,, ,,,, по умолчанию, по умолчанию ,,,, по умолчанию ,,, по умолчанию ,,,, 123,122,125,113default ,, ,, по умолчанию по умолчанию, 124,145140default ,,,,, ,, по умолчанию ,,,, по умолчанию ,, ,, по умолчанию по умолчанию по умолчанию ,, ,, по умолчанию, по умолчанию ,, по умолчанию ,, ,, по умолчанию по умолчанию, по умолчанию ,,,, по умолчанию ,,, по умолчанию ,, по умолчанию ,,, по умолчанию ,, умолчанию ,, 137default ,,,, по умолчанию ,, по умолчанию, , по умолчанию ,,, по умолчанию ,,,,, по умолчанию ,,,, 82,83default ,,, по умолчанию ,, ,, по умолчанию по умолчанию, , по умолчанию ,, по умолчанию ,, по умолчанию ,, по умолчанию ,, по умолчанию ,, по умолчанию ,, по умолчанию ,, по умолчанию ,, по умолчанию ,, ,, по умолчанию по умолчанию, ,, по умолчанию ,,, по умолчанию ,,, по умолчанию ,, по умолчанию ,,, по умолчанию ,,, по умолчанию ,, по умолчанию ,, по умолчанию, по умолчанию, по умолчанию, по умолчанию ,,,, по умолчанию, , по умолчанию, по умолчанию ,, ,, по умолчанию по умолчанию по умолчанию ,, ,,, по умолчанию ,, по умолчанию ,,, по умолчанию ,,,, умолчанию ,, по умолчанию ,,, по умолчанию ,,, по умолчанию ,,,, по умолчанию ,,, по умолчанию ,,,, по умолчанию, по умолчанию, по умолчанию ,,, по умолчанию,, по умолчанию ,, ,, по умолчанию по умолчанию ,, по умолчанию, 114, по умолчанию ,,, 117,116default ,,, по умолчанию ,, ,, 117,116default по умолчанию ,, по умолчанию ,,, по умолчанию ,, по умолчанию ,,, по умолчанию ,, по умолчанию ,, по умолчанию, по умолчанию ,,, по умолчанию ,,, по умолчанию ,,, 108default, ,, 118,129,121,143,80,82,81,148,117,146,107,88,118,82,80,81,148,143,123,118,107,142,116,110,128,127,111,109,125,113,123,118,85,118,128,109,126,93,114,82,142,108,111,90,113,123,144,148,108,107,142,116,115,110,128,127,113,118,144,146,80,148,107,143,135,125,143,110,115,118,132,146,80,123,81,148,107,116,108,109,125,135,113,123,144,118,116,108,127,147,125,123,144,129,107,142,112,116,135,113,123,144,132,118,107,85,123,144,118,82,148,107,123,132,146,148, 107,108,122,89,136,146,80,81,117,148,142,107,110,147,119,82,80,145,129,146,80,148,107,111,109,125,113,123,118,148,81,107,131,115,109,121,125,135,113,123,144,107,131,126,93,141,114,124,139,113,91,144,118,81,117,148,107,142,115,143,135,91,118,142,116,87,143,140,123,144,132,145,129,146,82,80,117,91,118,148,137,113,141,93,143,136,123,144,146,82,118,148,85,112,108,127,122,87,143,141,91,144,146,80,82,81,117,148,107,115,109,91,129,146, 82,80,117,148,81,142,107,110,130,138,89,126,113, по умолчанию, по умолчанию, 118,146,82,81,148,107,142,115,109,126, по умолчанию, 123,144,145,80,146,82,81,117,142,128,138,135,93,140,123,144,145,132,82,80,117,83,142,130,140,145,129,82,80,81,108,111,138,89,143,125,145,123,118,82,80,81,117, 88,112,108,147,139,119,140,123,144,118,80,82,81,142,107,85,108,115,114,144,118,129,146,80,81,83,120,148,107,142,128,127,110,115,91,123,145,82,117,146,81,80,148,82,80,117,81,148,83,120,107,142,88,131,118,129,146,80,117,107,83,88,142,130,89,125,139,134,113,145,144,118,132,123,82,80,146,81,148,83,123, 9 1,137,140,134,139,113,141,124,93140,150,150) order by add_date desc limit 7

  • 0
    я могу удалить первый комм из моего персонажа
  • 0
    Используйте функцию обрезки
Показать ещё 2 комментария
Теги:

3 ответа

0
Лучший ответ

На самом деле я не могу понять, как вы получаете хотя бы одну запятую... Вот как вы можете попробовать.

        $get_id = "select rel_blog,page_id from pages";
        $resu = mysql_query($get_id);
        $p_id="";
        $rel_b="";
        $i = 1;
        while ($page_id = mysql_fetch_array($resu)){

          $p_id.= $page_id['page_id']; 

          if($page_id['rel_blog']!=="" && $page_id['rel_blog']==="default") {
            $rel_b.= $page_id['rel_blog'] .","; 
          }

        } 
        $p_id."<br>";

        $rel_b = substr($rel_b,0,-1); // get rid of the last comma
        echo $rel_b."<br>";

        echo $getblog = "SELECT * FROM pages WHERE rel_blog IN ($rel_b) order by add_date desc limit 7"; 
  • 0
    T.Shah @ я решаю эту проблему, теперь проблема в том, что, когда я запускаю этот запрос, SELECT * FROM страниц ГДЕ rel_blog В порядке (149 149) по add_date desc limit 7, показывающий только один результат,
0

Вы можете сделать это перед запросом.
$rel_b = preg_replace('/,+/', ',', trim($rel_b, ','));

Это позволит удалить повторяющиеся запятые, а также запятые от начала и конца строки.

0

Попробуйте использовать implode():

$get_id = "select rel_blog from pages";
$resu = mysql_query($get_id);
$p_id = array();
$rel_b = array();
$i = 1;
while ($page_id = mysql_fetch_array($resu)){
  $p_id[] = $page_id['page_id']; 
  $rel_b[] = $page_id['rel_blog'];
}

$p_id = implode(',', $p_id);
$rel_b = implode(',', rel_b);

echo $getblog = "SELECT * FROM pages WHERE rel_blog IN ($rel_b) order by add_date desc limit 7";
  • 0
    Салим Иброгимов @ SELECT * ИЗ страниц, ГДЕ rel_blog IN (149) и и page_category = «благоприятный» порядок по предельному пределу add_date 7 возвращают только одни данные, но как можно, но 149, содержащие больше данных, разрешите мне решение
  • 0
    @webduniya: сколько строк вы ожидаете? и сколько строк с одним и тем же критерием.

Ещё вопросы

Сообщество Overcoder
Наверх
Меню