SELECT 
  cscart_banners.banner_id, 
  cscart_banners.type, 
  cscart_banners.target, 
  cscart_banners.status, 
  cscart_banners.timestamp, 
  cscart_banner_descriptions.banner, 
  cscart_banner_descriptions.description, 
  cscart_banner_descriptions.url, 
  cscart_banner_images.banner_image_id 
FROM 
  cscart_banners 
  LEFT JOIN cscart_banner_descriptions ON cscart_banner_descriptions.banner_id = cscart_banners.banner_id 
  AND cscart_banner_descriptions.lang_code = 'ru' 
  LEFT JOIN cscart_banner_images ON cscart_banner_images.banner_id = cscart_banners.banner_id 
  AND cscart_banner_images.lang_code = 'ru' 
WHERE 
  1 
  AND (
    cscart_banners.type != 'G' 
    OR cscart_banner_images.banner_image_id IS NOT NULL
  ) 
  AND cscart_banners.banner_id IN (38, 37, 39) 
  AND cscart_banners.status = 'A' 
  AND IF (
    cscart_banners.type not like 'abt__ut2', 
    'available', 
    IF (
      cscart_banners.type like 'abt__ut2' 
      AND (
        cscart_banners.abt__ut2_use_avail_period = 'N' 
        OR (
          cscart_banners.abt__ut2_use_avail_period = 'Y' 
          AND (
            cscart_banners.abt__ut2_avail_from = 0 
            OR cscart_banners.abt__ut2_avail_from <= 1781552937
          ) 
          AND (
            cscart_banners.abt__ut2_avail_till = 0 
            OR cscart_banners.abt__ut2_avail_till >= 1781552937
          )
        )
      ), 
      'available', 
      'not available'
    )
  ) = 'available' 
  AND (
    cscart_banners.abt__ut2_usergroup_ids = '' 
    OR FIND_IN_SET(
      0, cscart_banners.abt__ut2_usergroup_ids
    ) 
    OR FIND_IN_SET(
      1, cscart_banners.abt__ut2_usergroup_ids
    )
  ) 
ORDER BY 
  cscart_banner_descriptions.banner asc

Query time 0.00123

JSON explain

{
  "query_block": {
    "select_id": 1,
    "cost_info": {
      "query_cost": "17.17"
    },
    "ordering_operation": {
      "using_temporary_table": true,
      "using_filesort": true,
      "cost_info": {
        "sort_cost": "2.93"
      },
      "nested_loop": [
        {
          "table": {
            "table_name": "cscart_banners",
            "access_type": "range",
            "possible_keys": [
              "PRIMARY",
              "status"
            ],
            "key": "PRIMARY",
            "used_key_parts": [
              "banner_id"
            ],
            "key_length": "3",
            "rows_examined_per_scan": 3,
            "rows_produced_per_join": 2,
            "filtered": "97.67",
            "index_condition": "(`cscart`.`cscart_banners`.`banner_id` in (38,37,39))",
            "cost_info": {
              "read_cost": "6.62",
              "eval_cost": "0.59",
              "prefix_cost": "7.21",
              "data_read_per_join": "17K"
            },
            "used_columns": [
              "banner_id",
              "status",
              "type",
              "target",
              "timestamp",
              "abt__ut2_usergroup_ids",
              "abt__ut2_use_avail_period",
              "abt__ut2_avail_from",
              "abt__ut2_avail_till"
            ],
            "attached_condition": "((`cscart`.`cscart_banners`.`status` = 'A') and (if((not((`cscart`.`cscart_banners`.`type` like 'abt__ut2'))),'available',if(((`cscart`.`cscart_banners`.`type` like 'abt__ut2') and ((`cscart`.`cscart_banners`.`abt__ut2_use_avail_period` = 'N') or ((`cscart`.`cscart_banners`.`abt__ut2_use_avail_period` = 'Y') and ((`cscart`.`cscart_banners`.`abt__ut2_avail_from` = 0) or (`cscart`.`cscart_banners`.`abt__ut2_avail_from` <= 1781552937)) and ((`cscart`.`cscart_banners`.`abt__ut2_avail_till` = 0) or (`cscart`.`cscart_banners`.`abt__ut2_avail_till` >= 1781552937))))),'available','not available')) = 'available') and ((`cscart`.`cscart_banners`.`abt__ut2_usergroup_ids` = '') or find_in_set(0,`cscart`.`cscart_banners`.`abt__ut2_usergroup_ids`) or find_in_set(1,`cscart`.`cscart_banners`.`abt__ut2_usergroup_ids`)))"
          }
        },
        {
          "table": {
            "table_name": "cscart_banner_descriptions",
            "access_type": "eq_ref",
            "possible_keys": [
              "PRIMARY"
            ],
            "key": "PRIMARY",
            "used_key_parts": [
              "banner_id",
              "lang_code"
            ],
            "key_length": "9",
            "ref": [
              "cscart.cscart_banners.banner_id",
              "const"
            ],
            "rows_examined_per_scan": 1,
            "rows_produced_per_join": 2,
            "filtered": "100.00",
            "cost_info": {
              "read_cost": "2.93",
              "eval_cost": "0.59",
              "prefix_cost": "10.73",
              "data_read_per_join": "14K"
            },
            "used_columns": [
              "banner_id",
              "banner",
              "url",
              "description",
              "lang_code"
            ]
          }
        },
        {
          "table": {
            "table_name": "cscart_banner_images",
            "access_type": "eq_ref",
            "possible_keys": [
              "banner"
            ],
            "key": "banner",
            "used_key_parts": [
              "banner_id",
              "lang_code"
            ],
            "key_length": "9",
            "ref": [
              "cscart.cscart_banners.banner_id",
              "const"
            ],
            "rows_examined_per_scan": 1,
            "rows_produced_per_join": 2,
            "filtered": "100.00",
            "cost_info": {
              "read_cost": "2.93",
              "eval_cost": "0.59",
              "prefix_cost": "14.24",
              "data_read_per_join": "46"
            },
            "used_columns": [
              "banner_image_id",
              "banner_id",
              "lang_code"
            ],
            "attached_condition": "<if>(found_match(cscart_banner_images), ((`cscart`.`cscart_banners`.`type` <> 'G') or (`cscart`.`cscart_banner_images`.`banner_image_id` is not null)), true)"
          }
        }
      ]
    }
  }
}

Result

banner_id type target status timestamp banner description url banner_image_id
37 abt__ut2 B A 1727125200 Баннер (Диван) 179
39 abt__ut2 B A 1727125200 Баннер (корпусная мебель) 229
38 abt__ut2 B A 1726866000 Баннер (минимализм стиль рендер) 167