SELECT 
  cscart_ab__category_banners.*, 
  cscart_ab__category_banner_images_and_descr.category_banner, 
  cscart_ab__category_banner_images_and_descr.url, 
  cscart_ab__category_banner_images_and_descr.category_banner_image_id 
FROM 
  cscart_ab__category_banners 
  INNER JOIN cscart_ab__category_banner_images_and_descr ON cscart_ab__category_banner_images_and_descr.category_banner_id = cscart_ab__category_banners.category_banner_id 
  AND cscart_ab__category_banner_images_and_descr.lang_code = 'ru' 
  LEFT JOIN cscart_ab__category_banner_categories AS ab__category_banner_categories ON ab__category_banner_categories.category_banner_id = cscart_ab__category_banners.category_banner_id 
  LEFT JOIN cscart_ab__category_banner_categories AS ab__category_banner_categories1 ON ab__category_banner_categories1.category_banner_id = cscart_ab__category_banners.category_banner_id 
  INNER JOIN cscart_images_links AS il ON il.object_type = 'category_banner' 
  AND il.object_id = cscart_ab__category_banner_images_and_descr.category_banner_image_id 
  AND il.pair_id IS NOT NULL 
  AND il.type = 'M' 
WHERE 
  1 
  AND cscart_ab__category_banners.status = 'A' 
  AND cscart_ab__category_banner_images_and_descr.category_banner_image_id IS NOT NULL 
  AND (
    IF(
      cscart_ab__category_banners.from_date, 
      cscart_ab__category_banners.from_date <= 1774755272, 
      1
    ) 
    AND IF(
      cscart_ab__category_banners.to_date, 
      cscart_ab__category_banners.to_date >= 1774755272, 
      1
    )
  ) 
  AND (
    ab__category_banner_categories.category_id = 363 
    OR (
      ab__category_banner_categories1.category_id IN (361, 363) 
      AND cscart_ab__category_banners.include_subcategories = 'Y'
    )
  ) 
ORDER BY 
  cscart_ab__category_banner_images_and_descr.category_banner asc

Query time 0.00121

JSON explain

{
  "query_block": {
    "select_id": 1,
    "cost_info": {
      "query_cost": "1313.72"
    },
    "ordering_operation": {
      "using_filesort": true,
      "cost_info": {
        "sort_cost": "968.56"
      },
      "nested_loop": [
        {
          "table": {
            "table_name": "cscart_ab__category_banner_images_and_descr",
            "access_type": "ALL",
            "possible_keys": [
              "PRIMARY",
              "banner"
            ],
            "rows_examined_per_scan": 5,
            "rows_produced_per_join": 1,
            "filtered": "20.00",
            "cost_info": {
              "read_cost": "0.65",
              "eval_cost": "0.10",
              "prefix_cost": "0.75",
              "data_read_per_join": "1K"
            },
            "used_columns": [
              "category_banner_image_id",
              "category_banner_id",
              "category_banner",
              "url",
              "lang_code"
            ],
            "attached_condition": "(`zdrowy_db`.`cscart_ab__category_banner_images_and_descr`.`lang_code` = 'ru')"
          }
        },
        {
          "table": {
            "table_name": "cscart_ab__category_banners",
            "access_type": "eq_ref",
            "possible_keys": [
              "PRIMARY",
              "status"
            ],
            "key": "PRIMARY",
            "used_key_parts": [
              "category_banner_id"
            ],
            "key_length": "3",
            "ref": [
              "zdrowy_db.cscart_ab__category_banner_images_and_descr.category_banner_id"
            ],
            "rows_examined_per_scan": 1,
            "rows_produced_per_join": 1,
            "filtered": "100.00",
            "cost_info": {
              "read_cost": "0.25",
              "eval_cost": "0.10",
              "prefix_cost": "1.10",
              "data_read_per_join": "808"
            },
            "used_columns": [
              "category_banner_id",
              "status",
              "target_blank",
              "nofollow",
              "repeat",
              "position",
              "include_subcategories",
              "from_date",
              "to_date"
            ],
            "attached_condition": "((`zdrowy_db`.`cscart_ab__category_banners`.`status` = 'A') and (0 <> if(`zdrowy_db`.`cscart_ab__category_banners`.`from_date`,(`zdrowy_db`.`cscart_ab__category_banners`.`from_date` <= 1774755272),1)) and (0 <> if(`zdrowy_db`.`cscart_ab__category_banners`.`to_date`,(`zdrowy_db`.`cscart_ab__category_banners`.`to_date` >= 1774755272),1)))"
          }
        },
        {
          "table": {
            "table_name": "ab__category_banner_categories",
            "access_type": "ref",
            "possible_keys": [
              "PRIMARY"
            ],
            "key": "PRIMARY",
            "used_key_parts": [
              "category_banner_id"
            ],
            "key_length": "3",
            "ref": [
              "zdrowy_db.cscart_ab__category_banner_images_and_descr.category_banner_id"
            ],
            "rows_examined_per_scan": 5,
            "rows_produced_per_join": 5,
            "filtered": "100.00",
            "using_index": true,
            "cost_info": {
              "read_cost": "0.25",
              "eval_cost": "0.54",
              "prefix_cost": "1.89",
              "data_read_per_join": "43"
            },
            "used_columns": [
              "category_banner_id",
              "category_id"
            ],
            "attached_condition": "<if>(found_match(ab__category_banner_categories), ((`zdrowy_db`.`ab__category_banner_categories`.`category_id` = 363) or (`zdrowy_db`.`cscart_ab__category_banners`.`include_subcategories` = 'Y')), true)"
          }
        },
        {
          "table": {
            "table_name": "ab__category_banner_categories1",
            "access_type": "ref",
            "possible_keys": [
              "PRIMARY"
            ],
            "key": "PRIMARY",
            "used_key_parts": [
              "category_banner_id"
            ],
            "key_length": "3",
            "ref": [
              "zdrowy_db.cscart_ab__category_banner_images_and_descr.category_banner_id"
            ],
            "rows_examined_per_scan": 5,
            "rows_produced_per_join": 29,
            "filtered": "100.00",
            "using_index": true,
            "cost_info": {
              "read_cost": "1.36",
              "eval_cost": "2.92",
              "prefix_cost": "6.17",
              "data_read_per_join": "233"
            },
            "used_columns": [
              "category_banner_id",
              "category_id"
            ],
            "attached_condition": "<if>(found_match(ab__category_banner_categories1), ((`zdrowy_db`.`ab__category_banner_categories`.`category_id` = 363) or ((`zdrowy_db`.`ab__category_banner_categories1`.`category_id` in (361,363)) and (`zdrowy_db`.`cscart_ab__category_banners`.`include_subcategories` = 'Y'))), true)"
          }
        },
        {
          "table": {
            "table_name": "il",
            "access_type": "ref",
            "possible_keys": [
              "object_id"
            ],
            "key": "object_id",
            "used_key_parts": [
              "object_id",
              "object_type",
              "type"
            ],
            "key_length": "81",
            "ref": [
              "zdrowy_db.cscart_ab__category_banner_images_and_descr.category_banner_image_id",
              "const",
              "const"
            ],
            "rows_examined_per_scan": 33,
            "rows_produced_per_join": 968,
            "filtered": "100.00",
            "index_condition": "(`zdrowy_db`.`il`.`object_id` = `zdrowy_db`.`cscart_ab__category_banner_images_and_descr`.`category_banner_image_id`)",
            "cost_info": {
              "read_cost": "242.14",
              "eval_cost": "96.86",
              "prefix_cost": "345.16",
              "data_read_per_join": "90K"
            },
            "used_columns": [
              "pair_id",
              "object_id",
              "object_type",
              "type"
            ]
          }
        }
      ]
    }
  }
}