public function modifySelect(\Magento\Framework\DB\Select $select)
    {
        /* aliases for tables ... */
        $tblEntity = 'e'; // this is alias for 'catalog_product_entity' table
        $tblStockItem = $this->_resource->getTableName(self::TBL_STOCK_ITEM);
        $tblWrhsQty = $this->_resource->getTableName(self::TBL_WRHS_QTY);
        /* ... and fields */
        $fldStockItemProdId = StockItem::PRODUCT_ID;
        $fldStockItemId = StockItem::ITEM_ID;
        $fldEntityId = \Magento\Eav\Model\Entity::DEFAULT_ENTITY_ID_FIELD;
        $fldQty = self::FLD_QTY;
        $fldStockItemRef = Quantity::A_STOCK_ITEM_REF;

        /* LEFT JOIN `cataloginventory_stock_item` */
        $on = "`$tblStockItem`.`$fldStockItemProdId`=`$tblEntity`.`$fldEntityId`";
        $fields = [];
        $select->joinLeft($tblStockItem, $on, $fields);

        /* LEFT JOIN `prxgt_wrhs_qty` */
        $on = "`$tblWrhsQty`.`$fldStockItemRef`=`$tblStockItem`.`$fldStockItemId`";
        $fields = [$fldQty => $this->getEquationQty()];
        $select->joinLeft($tblWrhsQty, $on, $fields);

        /* GROUP BY */
        $select->group("$tblEntity.$fldEntityId");
        return $select;
    }
public function modifySelect(\Magento\Framework\DB\Select $select)
    {
        /* aliases for tables ... */
        $tblEntity = 'e'; // this is alias for 'catalog_product_entity' table
        $tblStockItem = $this->_resource->getTableName(self::TBL_STOCK_ITEM);
        $tblWrhsQty = $this->_resource->getTableName(self::TBL_WRHS_QTY);
        /* ... and fields */
        $fldStockItemProdId = StockItem::PRODUCT_ID;
        $fldStockItemId = StockItem::ITEM_ID;
        $fldEntityId = \Magento\Eav\Model\Entity::DEFAULT_ENTITY_ID_FIELD;
        $fldQty = self::FLD_QTY;
        $fldStockItemRef = Quantity::A_STOCK_ITEM_REF;

        /* LEFT JOIN `cataloginventory_stock_item` */
        $on = "`$tblStockItem`.`$fldStockItemProdId`=`$tblEntity`.`$fldEntityId`";
        $fields = [];
        $select->joinLeft($tblStockItem, $on, $fields);

        /* LEFT JOIN `prxgt_wrhs_qty` */
        $on = "`$tblWrhsQty`.`$fldStockItemRef`=`$tblStockItem`.`$fldStockItemId`";
        $fields = [$fldQty => $this->getEquationQty()];
        $select->joinLeft($tblWrhsQty, $on, $fields);

        /* GROUP BY */
        $select->group("$tblEntity.$fldEntityId");
        return $select;
    }
public function modifySelect ( \ Magento \ Framework \ DB \ Select $ select ) { /* aliases for tables ... */ $ tblEntity = 'e' ; // this is alias for 'catalog_product_entity' table $ tblStockItem = $ this -> _resource -> getTableName ( self :: TBL_STOCK_ITEM ) ; $ tblWrhsQty = $ this -> _resource -> getTableName ( self :: TBL_WRHS_QTY ) ; /* ... and fields */ $ fldStockItemProdId = StockItem :: PRODUCT_ID ; $ fldStockItemId = StockItem :: ITEM_ID ; $ fldEntityId = \ Magento \ Eav \ Model \ Entity :: DEFAULT_ENTITY_ID_FIELD ; $ fldQty = self :: FLD_QTY ; $ fldStockItemRef = Quantity :: A_STOCK_ITEM_REF ; /* LEFT JOIN `cataloginventory_stock_item` */ $ on = "`$tblStockItem`.`$fldStockItemProdId`=`$tblEntity`.`$fldEntityId`" ; $ fields = [ ] ; $ select -> joinLeft ( $ tblStockItem , $ on , $ fields ) ; /* LEFT JOIN `prxgt_wrhs_qty` */ $ on = "`$tblWrhsQty`.`$fldStockItemRef`=`$tblStockItem`.`$fldStockItemId`" ; $ fields = [ $ fldQty => $ this -> getEquationQty ( ) ] ; $ select -> joinLeft ( $ tblWrhsQty , $ on , $ fields ) ; /* GROUP BY */ $ select -> group ( "$tblEntity.$fldEntityId" ) ; return $ select ; }
Add JOINs to original select.

@param \Magento\Framework\DB\Select $select
@return \Magento\Framework\DB\Select
Add JOINs to original select .