Я использую рекурсивный метод в моем Laravel хранилище для отображения дерева клиентов (владельцы - клиенты), но в MS SQL у меня проблема с SQL выбором параметров (MS SQL ограничено 2500 параметрами на запрос). Я не хочу использовать сырье SQL.
public function getStructureIDs($ownerID, &$structIDs = []) {
$result = $this->model
->select('customer_ID')
->where('owner_ID', $ownerID)
->get();
if ($result->count() == 0)
return $structIDs;
foreach ($result as $resultItem) {
$structIDs[] = $resultItem->customer_ID;
$this->getStructureIDs($resultItem->customer_ID, $structIDs);
}
$structIDs[] = $ownerID;
return $structIDs;
}
Спасибо за все советы.
Кстати, я нашел это:
https://github.com/Microsoft/msphpsql/blob/v4.2.0-preview/source/shared/core_sqlsrv.h#L172 но я бы хотел переписать этот метод как-то в Laravel ORM.