Each CDF adds its own JOINs to the View SQL query regardless of whether that JOIN already exists in the query. Will it degrade performance or is MySQL smart enough to optimise for this?

The following example uses several CDFs which involve many of the same fields:

SELECT node.title AS node_title,
node.nid AS nid,
node_data_field_sai_list_price.field_sai_list_price_value AS node_data_field_sai_list_price_field_sai_list_price_value,
node.type AS node_type,
node.vid AS node_vid,
node_data_field_sai_discount.field_sai_discount_value AS node_data_field_sai_discount_field_sai_discount_value,
(node_data_field_sai_list_price.field_sai_list_price_value * ( 100 - node_data_field_sai_discount.field_sai_discount_value ) / 100) AS cid3,
node_data_field_sai_quantity.field_sai_quantity_value AS node_data_field_sai_quantity_field_sai_quantity_value,
(node_data_field_sai_list_price.field_sai_list_price_value * node_data_field_sai_quantity.field_sai_quantity_value) AS cid5,
(node_data_field_sai_list_price.field_sai_list_price_value * ( 100 - node_data_field_sai_discount.field_sai_discount_value ) / 100 * node_data_field_sai_quantity.field_sai_quantity_value) AS cid4,
node_data_field_saco_set_node.field_sai_profit_margin_value AS node_data_field_saco_set_node_field_sai_profit_margin_value,
(100 * (node_data_field_sai_list_price.field_sai_list_price_value * ( 100 - node_data_field_sai_discount.field_sai_discount_value ) / 100 * node_data_field_sai_quantity.field_sai_quantity_value) / (100 - node_data_field_sai_profit_margin.field_sai_profit_margin_value)) AS cid6
 FROM node node 
 LEFT JOIN content_type_assembly_component node_data_field_saco_set_node ON node.vid = node_data_field_saco_set_node.vid
 LEFT JOIN content_field_common_assembly_node node_data_field_common_assembly_node ON node.vid = node_data_field_common_assembly_node.vid
 LEFT JOIN content_field_sai_list_price node_data_field_sai_list_price ON node.vid = node_data_field_sai_list_price.vid
 LEFT JOIN content_field_sai_discount node_data_field_sai_discount ON node.vid = node_data_field_sai_discount.vid
 LEFT JOIN content_field_sai_discount node_data_field_sai_discount2 ON node.vid = node_data_field_sai_discount2.vid
 LEFT JOIN content_field_sai_list_price node_data_field_sai_list_price2 ON node.vid = node_data_field_sai_list_price2.vid
 LEFT JOIN content_field_sai_quantity node_data_field_sai_quantity ON node.vid = node_data_field_sai_quantity.vid
 LEFT JOIN content_field_sai_list_price node_data_field_sai_list_price3 ON node.vid = node_data_field_sai_list_price3.vid
 LEFT JOIN content_field_sai_quantity node_data_field_sai_quantity2 ON node.vid = node_data_field_sai_quantity2.vid
 LEFT JOIN content_field_sai_discount node_data_field_sai_discount3 ON node.vid = node_data_field_sai_discount3.vid
 LEFT JOIN content_field_sai_list_price node_data_field_sai_list_price4 ON node.vid = node_data_field_sai_list_price4.vid
 LEFT JOIN content_field_sai_quantity node_data_field_sai_quantity3 ON node.vid = node_data_field_sai_quantity3.vid
 LEFT JOIN content_field_sai_discount node_data_field_sai_discount4 ON node.vid = node_data_field_sai_discount4.vid
 LEFT JOIN content_type_assembly_component node_data_field_sai_profit_margin ON node.vid = node_data_field_sai_profit_margin.vid
 LEFT JOIN content_field_sai_quantity node_data_field_sai_quantity4 ON node.vid = node_data_field_sai_quantity4.vid
 WHERE (node.status = 1)

Comments

kevin.mcnamee@mailbox.org’s picture

Issue summary: View changes

Typo

karens’s picture

Status: Active » Closed (won't fix)

The D6 version is no longer supported.