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 (
    '3570', '3571', '3572', '3579', '3586', 
    '3590', '3591', '3592', '3593', '3594', 
    '3595', '3596', '3597', '3598', '3599', 
    '3602', '3603', '3604', '3605', '3606', 
    '3607', '3608', '3610', '3611', '3612', 
    '3613', '3614', '3615', '3616', '3617'
  ) 
ORDER BY 
  q_images_links.position, 
  q_images_links.pair_id

Query time 0.00151

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 ('3570','3571','3572','3579','3586','3590','3591','3592','3593','3594','3595','3596','3597','3598','3599','3602','3603','3604','3605','3606','3607','3608','3610','3611','3612','3613','3614','3615','3616','3617')))",
            "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.image_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"
            ]
          }
        },
        {
          "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 8779 3570 product 10744 M 0
0 8780 3571 product 10745 M 0
0 8790 3590 product 10755 M 0
0 8791 3591 product 10756 M 0
0 8792 3592 product 10757 M 0
0 8793 3593 product 10758 M 0
0 8794 3594 product 10759 M 0
0 8795 3595 product 10760 M 0
0 8797 3597 product 10762 M 0
0 8799 3599 product 10764 M 0
0 8802 3602 product 10767 M 0
0 8803 3603 product 10768 M 0
0 8804 3604 product 10769 M 0
0 8805 3605 product 10770 M 0
0 8806 3606 product 10771 M 0
0 8807 3608 product 10772 M 0
0 8808 3610 product 10773 M 0
0 8809 3611 product 10774 M 0
0 8810 3612 product 10775 M 0
0 8811 3613 product 10776 M 0
0 8812 3614 product 10777 M 0
0 8813 3615 product 10778 M 0
0 8814 3616 product 10779 M 0
0 8815 3617 product 10780 M 0
0 78403 3598 product 80346 M 0
0 82309 3596 product 84252 M 0
0 82524 3607 product 84467 M 0
0 85104 3572 product 84557 M 0
0 85105 3579 product 26963 M 0
0 85106 3586 product 26985 M 1