2015-07-28 8 views
-1

Возможно ли иметь предложение WHERE после массива imploding? Мне нужно вставить только строки, где priority> = 1. Благодарю.MySQL WHERE clause

$array = array(); 
foreach ($priority as $priority) 
$array[] = "('$id', '$studentname', '$title', '$academicdiscipline', '$priority')"; 

$query = "INSERT INTO flux_project_selection (id, studentname, title, 
academicdiscipline, priority) VALUES ". implode(',', $array); 
+0

Да возможно –

+2

Я добавил тег 'php'. Прошу прощения, если я ошибаюсь – Drew

+0

'$ query =" INSERT INTO flux_project_selection (id, studentname, title, academdiscipline, priority) VALUES ". implode (',', $ array). «WHERE priority> = 1»; 'не работает. Пример, пожалуйста? – NoooSmyth

ответ

2

Вставка утверждений не должна содержать where. Вместо этого используйте PHP для фильтрации того, что входит в переменную $array. Вот пример:

<?php 

$array = array(); 
foreach ($priority as $priority) { 
    if ($priority >=1) { 
     $array[] = "('$id', '$studentname', '$title', '$academicdiscipline', '$priority')"; 
    } 
} 

$query = "INSERT INTO flux_project_selection (id, studentname, title, 
academicdiscipline, priority) VALUES ". implode(',', $array); 

?> 
+0

Спасибо @BakerStreet. Именно то, что мне нужно. – NoooSmyth

+0

Удивительный! Как насчет того, чтобы обозначить это как правильный ответ? – BakerStreetSystems