Решил оптимизировать запросы.
Пытаюсь написать подготавлиемые запросы. Тут почему то не выходит.
Типы данных в таблице
id - int
time - int
ticker - char
//Получаем данные
$mysqli_request="SELECT `time`,`$column_value_from_base` FROM `$table_name` WHERE `time`>'$begin_time' AND `time`<'$end_time' AND `ticker`='$ticker'";
$mysqli_result=$mysqli->query($mysqli_request) or die ($mysqli->error);
$mysqli->close;
//Выводим их в цикле
$num_rows = $mysqli_result->num_rows;
//Заполняем массив данных
for($num_rows; $num_rows>0; $num_rows--)
{
$row = $mysqli_result->fetch_assoc();
$time=$row['time'];
}
//и далее ещё код....
//Подготавливаемый запрос
$stmt = $mysqli->prepare("SELECT `time`,? FROM $table_name WHERE `time`>? AND `time`<? AND `ticker`=?");
$stmt->bind_param('siis',$column_value_from_base,$begin_time,$end_time,$ticker);
$stmt->execute();
$mysqli_result = $stmt->get_result();
$mysqli->close; //Принудительно закрываем соединение (оптимизация)
$stmt->close; //Принудительно закрываем запрос (оптимизация)
//Выводим их в цикле
$num_rows = $mysqli_result->num_rows;
//Заполняем массив данных
for($num_rows; $num_rows>0; $num_rows--)
{
$row = $mysqli_result->fetch_assoc();
$time=$row['time'];
}
//и далее ещё код....
Результат подготавливаемого запроса ошибочный, пустой - вообщем что то не так.
К тому же, в запросе, мне не дали заменить $table_name на ? (возникает ошибка)
Как правильно написать подготавливаемый запрос?
И имеет ли он тут смысл? Предполагаемая выборка 1000 значений ($num_rows будет около 1000).