Структура таблицы: id (ключевое), user_id, service_id, sdate, svalue
Для каждого user_id по каждому service_id может быть несколько значений (записей), которые различаются по date, но теоретически могут и в один день добавлены.
При этом надо различать, есть уже подобная запись для user_id и service_id или нет и при вставке её соответственно обновлять или добавлять.
$sql = "INSERT INTO customers VALUES ";
/*
Тут я теоретически могу расставить где надо "id", где не надо - "NULL" и сформировать строки в виде:
$sql .= "(?,?,?,?,?),";
или
$sql .= "(NULL,?,?,?,?),";
*/
$sql .= "ON DUPLICATE KEY UPDATE sdate=VALUES(sdate), svalue=VALUES(svalue)";
$query = $mysqli -> prepare($sql);
/* а дальше начинается проблема с формированием списка переменных в bind_param*/
$query -> bind_param("",$variables);
$query -> execute();
$query -> close();
Правильно ли будет выполнять INSERT несколько раз (Около 50 service_id и от 0 до бесконечности(в среднем 1, но теоретиечски до 10) строк для каждого) с одним подготовленным выражением?