SELECT 
  cscart_companies.company_id, 
  cscart_companies.lang_code, 
  cscart_companies.email, 
  cscart_companies.timestamp, 
  cscart_companies.status, 
  cscart_companies.company, 
  cscart_companies.tax_number, 
  absolute_rating.rating AS absolute_vendor_rating, 
  cscart_vendor_plan_descriptions.plan, 
  AVG(
    cscart_discussion_rating.rating_value
  ) AS average_rating, 
  CONCAT(
    cscart_companies.company_id, 
    '_', 
    IF (
      cscart_discussion_rating.thread_id, 
      cscart_discussion_rating.thread_id, 
      '0'
    )
  ) AS company_thread_ids, 
  cscart_companies.robokassa_store_id, 
  cscart_companies.robokassa_account_number, 
  cscart_companies.suspend_date, 
  cscart_companies.last_time_suspended 
FROM 
  cscart_companies 
  LEFT JOIN cscart_absolute_rating AS absolute_rating ON absolute_rating.object_id = cscart_companies.company_id 
  AND absolute_rating.object_type = 'company' 
  LEFT JOIN cscart_vendor_plan_descriptions ON cscart_companies.plan_id = cscart_vendor_plan_descriptions.plan_id 
  AND cscart_vendor_plan_descriptions.lang_code = 'ru' 
  LEFT JOIN cscart_discussion ON cscart_discussion.object_id = cscart_companies.company_id 
  AND cscart_discussion.object_type = 'M' 
  LEFT JOIN cscart_discussion_posts ON cscart_discussion_posts.thread_id = cscart_discussion.thread_id 
  AND cscart_discussion_posts.status = 'A' 
  LEFT JOIN cscart_discussion_rating ON cscart_discussion.thread_id = cscart_discussion_rating.thread_id 
  AND cscart_discussion_rating.post_id = cscart_discussion_posts.post_id 
WHERE 
  1 
  AND cscart_companies.status = 'A' 
GROUP BY 
  company_thread_ids 
ORDER BY 
  cscart_companies.company asc

Query time 0.06524

JSON explain

{
  "query_block": {
    "select_id": 1,
    "filesort": {
      "sort_key": "cscart_companies.company",
      "temporary_table": {
        "nested_loop": [
          {
            "table": {
              "table_name": "absolute_rating",
              "access_type": "system",
              "possible_keys": ["PRIMARY"],
              "rows": 0,
              "filtered": 0,
              "const_row_not_found": true
            }
          },
          {
            "table": {
              "table_name": "cscart_companies",
              "access_type": "ALL",
              "rows": 16,
              "filtered": 100,
              "attached_condition": "cscart_companies.`status` = 'A'"
            }
          },
          {
            "table": {
              "table_name": "cscart_vendor_plan_descriptions",
              "access_type": "eq_ref",
              "possible_keys": ["PRIMARY"],
              "key": "PRIMARY",
              "key_length": "10",
              "used_key_parts": ["plan_id", "lang_code"],
              "ref": ["cscart.cscart_companies.plan_id", "const"],
              "rows": 1,
              "filtered": 100,
              "attached_condition": "trigcond(cscart_vendor_plan_descriptions.lang_code = 'ru')"
            }
          },
          {
            "table": {
              "table_name": "cscart_discussion",
              "access_type": "eq_ref",
              "possible_keys": ["object_id"],
              "key": "object_id",
              "key_length": "6",
              "used_key_parts": ["object_id", "object_type"],
              "ref": ["cscart.cscart_companies.company_id", "const"],
              "rows": 1,
              "filtered": 100,
              "attached_condition": "trigcond(cscart_discussion.object_id = cscart_companies.company_id and cscart_discussion.object_type = 'M')"
            }
          },
          {
            "table": {
              "table_name": "cscart_discussion_posts",
              "access_type": "ref",
              "possible_keys": ["thread_id", "thread_id_2"],
              "key": "thread_id",
              "key_length": "3",
              "used_key_parts": ["thread_id"],
              "ref": ["cscart.cscart_discussion.thread_id"],
              "rows": 11,
              "filtered": 100,
              "attached_condition": "trigcond(cscart_discussion_posts.`status` = 'A' and trigcond(cscart_discussion.thread_id is not null))"
            }
          },
          {
            "table": {
              "table_name": "cscart_discussion_rating",
              "access_type": "eq_ref",
              "possible_keys": ["PRIMARY", "thread_id"],
              "key": "PRIMARY",
              "key_length": "3",
              "used_key_parts": ["post_id"],
              "ref": ["cscart.cscart_discussion_posts.post_id"],
              "rows": 1,
              "filtered": 100,
              "attached_condition": "trigcond(cscart_discussion_rating.thread_id = cscart_discussion.thread_id and trigcond(cscart_discussion_posts.post_id is not null))"
            }
          }
        ]
      }
    }
  }
}

Result

company_id lang_code email timestamp status company tax_number absolute_vendor_rating plan average_rating company_thread_ids robokassa_store_id robokassa_account_number suspend_date last_time_suspended
15 en ala123dsadrionov@cs-cart123.ru 1775655176 A 123 Базовый 15_0 0 0 1775656995
2 ru acme_corp@example.com 1269610461 A ACME Corp Базовый 2_0 0 0
1 ru cs-cart@example.com 1269610461 A CS-Cart Голд 1_0 0 0
12 en aladsadrionov@cs-cart123.ru 1775647031 A dasaaaaaa Базовый 12_0 0 0 0
13 en asdalarionov@cs-cart123.ru 1775654151 A dasaaaaaaaaaaaaaaa Базовый 13_0 0 0 0
16 en daladsadrionov@cs-cart123.ru 1776063571 A sdf sdf Базовый 16_0 0 0 0
10 en alarionosdv@cs-cart123.ru 1775645843 A sxfsa Базовый 10_0 0 0 0
9 en alarionov@cs-cart123.ru 1775645482 A testtetest Базовый 9_0 0 0 0
14 en alaавыrionosdv@cs-cart123.ru 1775654886 A авыаы Базовый 14_0 0 0 0
11 en alaridsaonosdv@cs-cart123.ru 1775646455 A аыаы Базовый 11_0 0 0 0
6 ru vdd@example.com 1404900638 A Всё для дома Базовый 6_0 0 0 0
7 ru jet@example.com 1404900709 A Гаджет Базовый 7_0 0 0
5 ru dmoknigi@example.com 1404900570 A Дом книги Базовый 5_0 0 0
4 ru megaton@example.com 1404900515 A Мегатон Базовый 4_0 0 0 0
8 ru sport@example.com 1404900773 A Мир спорта Базовый 8_0 0 0
3 ru cd@example.com 1404900414 A Мой диск Базовый 3_0 0 0