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 (
    '2612', '2613', '2614', '2615', '2616', 
    '2617', '2618', '2619', '2620', '2621', 
    '2622', '2623', '2624', '2625', '2626', 
    '2627', '2628', '2629', '2630', '2631', 
    '2632', '2633', '2634', '2635', '2636', 
    '2637', '2638', '2640', '2641', '2642'
  ) 
ORDER BY 
  q_images_links.position, 
  q_images_links.pair_id

Query time 0.00173

JSON explain

{
  "query_block": {
    "select_id": 1,
    "cost_info": {
      "query_cost": "174.01"
    },
    "ordering_operation": {
      "using_filesort": true,
      "cost_info": {
        "sort_cost": "30.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": 30,
            "rows_produced_per_join": 30,
            "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 ('2612','2613','2614','2615','2616','2617','2618','2619','2620','2621','2622','2623','2624','2625','2626','2627','2628','2629','2630','2631','2632','2633','2634','2635','2636','2637','2638','2640','2641','2642')))",
            "cost_info": {
              "read_cost": "66.01",
              "eval_cost": "6.00",
              "prefix_cost": "72.01",
              "data_read_per_join": "2K"
            },
            "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": 30,
            "filtered": "100.00",
            "cost_info": {
              "read_cost": "30.00",
              "eval_cost": "6.00",
              "prefix_cost": "108.01",
              "data_read_per_join": "22K"
            },
            "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": 30,
            "filtered": "100.00",
            "cost_info": {
              "read_cost": "30.00",
              "eval_cost": "6.00",
              "prefix_cost": "144.01",
              "data_read_per_join": "17K"
            },
            "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 s-l1000_nz7b-l2.jpg 600 600 N 5928 2612 product 7899 M 0 7899
0 369087.jpg 449 449 N 5930 2613 product 7901 M 0 7901
0 item_XL_7547230_142370187.jpg 600 403 N 5932 2614 product 7903 M 0 7903
0 s-l1000_sp6u-q9.jpg 500 500 N 5934 2615 product 7905 M 0 7905
0 womens-fragrances-black-xs-los-angeles-2-7-oz-edt-for-women-1.jpg 800 800 N 5936 2616 product 7907 M 0 7907
0 Paco-Rabanne-Black-XS-Potion-Limited-Edition-100ml-EDT-for-Women-3349668524624-1.jpg 500 500 N 5938 2617 product 7909 M 0 7909
0 PACO802164.jpg 500 500 N 5940 2618 product 7911 M 0 7911
0 PACO65131911.jpg 500 500 N 5942 2619 product 7913 M 0 7913
0 Paco-Rabanne-Invictus-150ml-EDT-for-Men-3349668524969-1.jpg 500 500 N 5944 2620 product 7915 M 0 7915
0 Paco-Rabanne-Invictus-50ml-EDT-for-Men-3349668515653-1.jpg 500 500 N 5946 2621 product 7917 M 0 7917
0 Paco-Rabanne-Lady-Million-Absolutely-Gold-Eau-de-Perfume-80-ml-for-Woman-3349668514595-1.jpg 500 500 N 5948 2622 product 7919 M 0 7919
0 13004_rsz_lady_million_xmas_collector_paco_rabanne_packshots-jasmin.jpg 500 500 N 5950 2623 product 7921 M 0 7921
0 item_XL_23049627_32428644.jpg 376 392 N 5952 2624 product 7923 M 0 7923
0 3349668524570.jpg 600 600 N 5953 2625 product 7924 M 0 7924
0 3349668508471_403842dae6fdb2b86fa6e8f937884d3b.jpg 500 500 N 5954 2626 product 7925 M 0 7925
0 3349668508488-1.jpg 600 600 N 5955 2627 product 7926 M 0 7926
0 item_XL_5116741_8fb3f33f9ee0c.jpg 530 420 N 5956 2628 product 7927 M 0 7927
0 380770.jpg 640 640 N 5957 2629 product 7928 M 0 7928
0 s-l1000_bgrz-4c.jpg 800 800 N 5958 2630 product 7929 M 0 7929
0 965-0_600.jpg 600 343 N 5959 2631 product 7930 M 0 7930
0 966-0_600.jpg 600 426 N 5961 2632 product 7932 M 0 7932
0 item_XL_36073377_142176345.jpg 600 407 N 5962 2633 product 7933 M 0 7933
0 217511.jpg 414 414 N 5963 2634 product 7934 M 0 7934
0 item_XL_10687302_14167171.jpg 510 340 N 5965 2635 product 7936 M 0 7936
0 3349668543144_ed88c781008aee02300d3d97ed390a18.jpg 475 475 N 5966 2636 product 7937 M 0 7937
0 s-l1000_91b0-5z.jpg 500 500 N 5967 2637 product 7938 M 0 7938
0 paco-rabanne-pure-xs-edt-150-ml-spray.jpg 458 458 N 5968 2638 product 7939 M 0 7939
0 Pure-XS-EDT.jpg 500 366 N 5971 2640 product 7942 M 0 7942
0 paco-rabanne-pure-xs-for-her-eau-de-parfum-50ml.jpg 800 800 N 5973 2641 product 7944 M 0 7944
0 s-l1000_nokv-17.jpg 800 800 N 5975 2642 product 7946 M 0 7946