SELECT 
  q_images.*, 
  q_images_links.*, 
  q_common_descriptions.description AS alt, 
  q_images.image_id AS images_image_id 
FROM 
  q_images_links 
  LEFT JOIN q_images ON q_images_links.image_id = q_images.image_id 
  LEFT JOIN q_common_descriptions ON q_common_descriptions.object_id = q_images.image_id 
  AND q_common_descriptions.object_holder = 'images' 
  AND q_common_descriptions.lang_code = 'en' 
WHERE 
  q_images_links.object_type = 'product' 
  AND q_images_links.type = 'M' 
  AND q_images_links.object_id IN (
    '29201', '29202', '29203', '29204', 
    '29205', '29206', '29207', '29208', 
    '29209', '29210', '29211', '29212', 
    '29213', '29214', '29215', '29216', 
    '29218', '29219', '29220', '29221', 
    '29222', '29223', '29224', '29225', 
    '29226', '29227', '29228', '29229', 
    '29230', '29231', '29232', '29233'
  ) 
ORDER BY 
  q_images_links.position, 
  q_images_links.pair_id

Query time 0.00134

JSON explain

{
  "query_block": {
    "select_id": 1,
    "cost_info": {
      "query_cost": "488.01"
    },
    "ordering_operation": {
      "using_filesort": true,
      "cost_info": {
        "sort_cost": "95.00"
      },
      "nested_loop": [
        {
          "table": {
            "table_name": "q_images_links",
            "access_type": "range",
            "possible_keys": [
              "object_id"
            ],
            "key": "object_id",
            "used_key_parts": [
              "object_id",
              "object_type",
              "type"
            ],
            "key_length": "81",
            "rows_examined_per_scan": 95,
            "rows_produced_per_join": 95,
            "filtered": "100.00",
            "index_condition": "((`portal`.`q_images_links`.`object_type` = 'product') and (`portal`.`q_images_links`.`type` = 'M') and (`portal`.`q_images_links`.`object_id` in ('29201','29202','29203','29204','29205','29206','29207','29208','29209','29210','29211','29212','29213','29214','29215','29216','29218','29219','29220','29221','29222','29223','29224','29225','29226','29227','29228','29229','29230','29231','29232','29233')))",
            "cost_info": {
              "read_cost": "146.01",
              "eval_cost": "19.00",
              "prefix_cost": "165.01",
              "data_read_per_join": "8K"
            },
            "used_columns": [
              "pair_id",
              "object_id",
              "object_type",
              "image_id",
              "detailed_id",
              "type",
              "position"
            ]
          }
        },
        {
          "table": {
            "table_name": "q_images",
            "access_type": "eq_ref",
            "possible_keys": [
              "PRIMARY"
            ],
            "key": "PRIMARY",
            "used_key_parts": [
              "image_id"
            ],
            "key_length": "4",
            "ref": [
              "portal.q_images_links.image_id"
            ],
            "rows_examined_per_scan": 1,
            "rows_produced_per_join": 95,
            "filtered": "100.00",
            "cost_info": {
              "read_cost": "95.00",
              "eval_cost": "19.00",
              "prefix_cost": "279.01",
              "data_read_per_join": "72K"
            },
            "used_columns": [
              "image_id",
              "image_path",
              "image_x",
              "image_y",
              "is_high_res"
            ]
          }
        },
        {
          "table": {
            "table_name": "q_common_descriptions",
            "access_type": "eq_ref",
            "possible_keys": [
              "PRIMARY"
            ],
            "key": "PRIMARY",
            "used_key_parts": [
              "object_id",
              "lang_code",
              "object_holder"
            ],
            "key_length": "107",
            "ref": [
              "portal.q_images.image_id",
              "const",
              "const"
            ],
            "rows_examined_per_scan": 1,
            "rows_produced_per_join": 95,
            "filtered": "100.00",
            "cost_info": {
              "read_cost": "95.00",
              "eval_cost": "19.00",
              "prefix_cost": "393.01",
              "data_read_per_join": "56K"
            },
            "used_columns": [
              "object_id",
              "description",
              "lang_code",
              "object_holder"
            ],
            "attached_condition": "<if>(is_not_null_compl(q_common_descriptions), (`portal`.`q_common_descriptions`.`object_id` = `portal`.`q_images`.`image_id`), true)"
          }
        }
      ]
    }
  }
}

Result

image_id image_path image_x image_y is_high_res pair_id object_id object_type detailed_id type position alt images_image_id
0 42148 29233 product 44110 M 0
0 42151 29231 product 44113 M 0
0 42152 29230 product 44114 M 0
0 42153 29229 product 44115 M 0
0 42154 29227 product 44116 M 0
0 42155 29226 product 44117 M 0
0 42157 29225 product 44119 M 0
0 42159 29224 product 44121 M 0
0 42161 29223 product 44123 M 0
0 42162 29222 product 44124 M 0
0 42167 29220 product 44129 M 0
0 42169 29219 product 44131 M 0
0 42171 29218 product 44133 M 0
0 42174 29216 product 44136 M 0
0 42176 29215 product 44138 M 0
0 42179 29214 product 44141 M 0
0 42189 29210 product 44151 M 0
0 42190 29209 product 44152 M 0
0 42192 29208 product 44154 M 0
0 42193 29206 product 44155 M 0
0 42196 29205 product 44158 M 0
0 42201 29203 product 44163 M 0
0 42203 29202 product 44165 M 0
0 42206 29201 product 44168 M 0
0 42566 29228 product 44528 M 0
0 42575 29207 product 44537 M 0
0 78970 29232 product 80913 M 0
0 82097 29212 product 84040 M 0
0 82098 29204 product 84041 M 0
0 82342 29221 product 84285 M 0
0 82848 29213 product 84791 M 0
0 42188 29211 product 44150 M 1