Problema na tabela de soma total de codeigniter de sql

Eu tenho um pequeno problema quando quero fazer a soma total da coluna por id.

Produtos de mesa

id   code    name        price  quantity
522  123     Product 1     12      4

Tabela purchase_items

id  product_id  quantity
1      522            5
2      522            1

Tabela sale_items

id  product_id  quantity
1      522            1
2      522            1

função codeigniter:

$products = $this->alerts->select('products.id as productid, products.code as code, products.name, products.price, sum(sale_items.quantity)')
      ->from('products');
      $this->alerts->join('sale_items', 'products.id = sale_items.product_id');           
      $this->alerts->group_by("products.id");

      $products = $this->alerts->select('products.id as productid, products.code as code, products.name, products.price, sum(purchase_items.quantity)')
      ->from('products');
      $this->alerts->join('purchase_items', 'products.id = purchase_items.product_id');           
      $this->alerts->group_by("products.id");


        $this->alerts->unset_column('productid');

        foreach ($this->result_array() as $product)
        {
            $products[] = $product['record'];
        }

        return $products;
    }

A questão é que o resultado para

purchase_items the result is 12
sale_items      the result is 4

Por que está levando o resultado x 2?

Qualquer ajuda é apreciada.

questionAnswers(1)

yourAnswerToTheQuestion