Sample JSON Format for Skus & Boards

SELECT
  JSON_PRETTY(
    JSON_OBJECT(
      'productName',      COALESCE(d.pretty_name, NULL),
      'sku',              c.child_sku,
      'variant',          c.config_name,
      'compatibleBoards', (
        SELECT JSON_ARRAYAGG(CONCAT(bt.code, '-', bv.version_code) ORDER BY bt.code, bv.version_code)
        FROM sku_compatible_boards scb
        JOIN board_types   bt ON bt.id = scb.board_type_id
        JOIN board_versions bv ON bv.id = scb.board_version_id
        WHERE scb.sku_config_id = c.id
      ),
      'heatingWattage', JSON_OBJECT(
        'circuit1', MAX(CASE WHEN cc.circuit_no = 1 THEN cc.rated_watts END),
        'circuit2', MAX(CASE WHEN cc.circuit_no = 2 THEN cc.rated_watts END),
        'circuit3', MAX(CASE WHEN cc.circuit_no = 3 THEN cc.rated_watts END)
      )
    )
  ) AS sku_json
FROM child_sku_config c
LEFT JOIN child_sku_circuits  cc ON cc.sku_config_id = c.id
LEFT JOIN sku_display_names   d  ON d.child_sku      = c.child_sku
WHERE c.child_sku = 'IR-HALO-9600-D-L'
GROUP BY c.id, c.child_sku, c.config_name, d.pretty_name
ORDER BY c.effective_from DESC;