У меня есть база данных firebird, где я вызываю процедуру для получения некоторых данных. Для этой процедуры требуется идентификатор, поэтому у меня есть два php запроса, один из которых дает мне все идентификаторы, а другой вызывает процедуру.
$queryP ="SELECT PROVEEDOR_ID FROM PROVEEDORES";
...some code...
while ($RowQ = ibase_fetch_object ($QueryObject))
{
$queryCompras =SELECT SUM(IMPORTE) FROM ORSP_CM_COMPRAS_PROV($RowQ->PROVEEDOR_ID, '2019-01-01', '2019-12-31', 'B', 'P', 'N');
...some code...
Я хотел бы сделать что-то вроде
SELECT SUM(COMPRA_IMPORTE) FROM ORSP_CM_COMPRAS_PROV((SELECT PROVEEDOR_ID FROM PROVEEDORES), '2019-01-01', '2019-12-31', 'B', 'P', 'N');
Чтобы не делать слишком много вызовов базы данных, но я получаю
Оператор не выполнен, SQLSTATE = 21000 нескольких строк в синглтоне select
Есть ли способ сделать это?