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.detailed_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 (
    '14514', '14515', '14516', '14517', 
    '14518', '14519', '14520', '14521', 
    '14522', '14523', '14524', '14525', 
    '14526', '14527', '14528', '14529'
  ) 
ORDER BY 
  q_images_links.position, 
  q_images_links.pair_id

Query time 0.00126

JSON explain

{
  "query_block": {
    "select_id": 1,
    "cost_info": {
      "query_cost": "112.01"
    },
    "ordering_operation": {
      "using_filesort": true,
      "cost_info": {
        "sort_cost": "20.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": 20,
            "rows_produced_per_join": 20,
            "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 ('14514','14515','14516','14517','14518','14519','14520','14521','14522','14523','14524','14525','14526','14527','14528','14529')))",
            "cost_info": {
              "read_cost": "40.01",
              "eval_cost": "4.00",
              "prefix_cost": "44.01",
              "data_read_per_join": "1K"
            },
            "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.detailed_id"
            ],
            "rows_examined_per_scan": 1,
            "rows_produced_per_join": 20,
            "filtered": "100.00",
            "cost_info": {
              "read_cost": "20.00",
              "eval_cost": "4.00",
              "prefix_cost": "68.01",
              "data_read_per_join": "15K"
            },
            "used_columns": [
              "image_id",
              "image_path",
              "image_x",
              "image_y",
              "is_high_res"
            ],
            "attached_condition": "<if>(is_not_null_compl(q_images), (`portal`.`q_images_links`.`detailed_id` = `portal`.`q_images`.`image_id`), true)"
          }
        },
        {
          "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": 20,
            "filtered": "100.00",
            "cost_info": {
              "read_cost": "20.00",
              "eval_cost": "4.00",
              "prefix_cost": "92.01",
              "data_read_per_join": "11K"
            },
            "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 51Tq7Vg8siL.jpg 500 500 N 28422 14514 product 30384 M 0 30384
0 41QG-9KDBIL.jpg 348 500 N 28423 14515 product 30385 M 0 30385
0 51gadzRaLwL.jpg 500 500 N 28425 14517 product 30387 M 0 30387
0 51q0IYUCMAL.jpg 421 500 N 28426 14518 product 30388 M 0 30388
0 51g9sR_XQ_L.jpg 500 500 N 28427 14519 product 30389 M 0 30389
0 31nBMCNxT7L.jpg 500 500 N 28428 14520 product 30390 M 0 30390
0 412jaV1ObtL.jpg 500 500 N 28429 14521 product 30391 M 0 30391
0 41qxDgFhCXL.jpg 500 305 N 28430 14522 product 30392 M 0 30392
0 41yztZkVTmL.jpg 407 500 N 28431 14523 product 30393 M 0 30393
0 31IkF8QEoPL.jpg 85 500 N 28432 14524 product 30394 M 0 30394
0 41uoFhq2oqL.jpg 500 500 N 28433 14525 product 30395 M 0 30395
0 51TZ7w-kCDL.jpg 500 500 N 28434 14526 product 30396 M 0 30396
0 41hHFAW1ZOL.jpg 500 500 N 28435 14527 product 30397 M 0 30397
0 51VL-e9EW6L.jpg 500 500 N 28436 14528 product 30398 M 0 30398
0 41y6NwERDSL.jpg 500 333 N 28437 14529 product 30399 M 0 30399
0 2_s0rs-ae.jpg 640 626 N 82027 14516 product 83970 M 0 83970