Как я могу получить доступ к возвращаемому значению в запросе RAW? - PullRequest
0 голосов
/ 07 мая 2019

У меня есть запрос RAW внутри Laravel querybuilder, и я хотел бы добавить вычисляемый столбец, используя значения, возвращаемые из RAW SELECT выражение

См. Пример:

**
DB::raw("(SELECT SUM(IF(transactions.type='sell', TSL.quantity - TSL.quantity_returned , -1* TPL.quantity) ) 
FROM transactions JOIN transaction_sell_lines AS TSL ON transactions.id=TSL.transaction_id LEFT JOIN 
purchase_lines AS TPL ON transactions.id=TPL.transaction_id
WHERE transactions.status='final' AND transactions.type='sell' $date_pick AND transactions.location_id='$location_id'
AND (TSL.variation_id=v.id OR TPL.variation_id=v.id)) as total_qty_sold"),

 'u.short_name as unit',

DB::raw('SUM((transaction_sell_lines.quantity -
transaction_sell_lines.quantity_returned) * 
transaction_sell_lines.unit_price_inc_tax) as subtotal'))
  ->groupBy('p.id')
  ->make(true);
**

в приведенном выше SELECT утверждении, которое я хотел бы использовать total_qty_sold, например

DB:raw(SUM(total_qty_sold * unit) as value)

Ошибка выброса MYSQL КОЛОННА НЕ НАЙДЕНА total_qty_sold 'и т. Д ...

Поскольку для необработанного запроса требуются некоторые условные операторы, и у меня есть несколько в одном и том же запросе, я не могу получить требуемое значение с помощью соединения

Что я могу сделать, чтобы получить столбец из необработанного запроса.

Примечание: это извлечено из одного большого запроса.

...