Какой простой способ добавить переменную к результатам, которые соответствуют определенным частям SELECT
запрос? Есть несколько OR
операторы в запросе, и я хотел бы указать, какому из критериев запросов соответствует конкретное значение.
Единственные идеи, которые приходят на ум сейчас, требуют выполнения последующих запросов / функций, но, поскольку существует довольно много OR
операторы в запросе, которые, вероятно, слишком сильно повлияют на производительность.
Вот очень упрощенный пример запроса:
$User_Waist = "30";
$User_Hip = "41";
$stmt = $conn->prepare("SELECT * FROM SizeChart WHERE FIND_IN_SET($User_Hip, Hip_Measurement) > 0 OR FIND_IN_SET($User_Waist, Waist_Measurement) > 0;
");
$stmt->bindValue(':Waist_Measurement', $Waist_Measurement, PDO::PARAM_STR);
$stmt->bindValue(':Hip_Measurement', $Hip_Measurement, PDO::PARAM_STR);
$stmt->execute();
if ($stmt->columnCount()) {
while($row = $stmt->fetch(PDO::FETCH_ASSOC)) {
echo $row['Size'].' '.$row['Waist_Measurement'].' '.$row['Hip_Measurement'], "<br />";
}
}
Задача ещё не решена.
Других решений пока нет …