Как сделать запрос PDO с условиями динамического ИЛИ - PullRequest
1 голос
/ 30 июня 2011

У меня есть запрос на выборку элемента из ac_product как:

$STH = $DBH->prepare('SELECT * from ac_product where active = "1" and id = :id');
$STH->bindParam(':id', $value);

Один из столбцов с именами взаимосвязи содержит 0-n других идентификаторов, которые необходимо получить.

Сегодня решение - один запрос на идентификатор, и я хотел бы ограничить его до меньшего или только одного, если это возможно.

рассмотрим, например,

$row['relationship'] //is 2.3.4
$arrayRelationship = explode(".",$row['relationship']);

Возможно ли, и если да, то как сделать запрос условия PDO ИЛИ, который может извлечь n связанных элементов?

Или есть простой способ скомпилировать n запросов и хотя бы выполнить их одновременно с помощью beginTransaction и commit?

1 Ответ

3 голосов
/ 30 июня 2011

Вы можете использовать IN (), это фактически замена логического ИЛИ.

$sth = $dbh->prepare('SELECT * from ac_product where active = "1" and id IN (:id)');
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...