In the FROM clause it is using of the Cartesian product of three tables! If the presence of the Product table can still be somehow justified because is needed to specify also the type of product, then the PC table can be safely removed without affect on the result. Obviously, the decision would not be optimal for speed of execution. In addition, you may have problems with memory, since the power of an intermediate result can be huge even for relatively small tables. Recall that the power of the Cartesian product is the product of power operands. For example, for tables with the number of rows 100, 500 and 1000 of the Cartesian product contains 50000000 row!

And, nevertheless, the decision was correct, because the DISTINCT statement eliminates all duplicates, resulting from the Cartesian product.