クエリを正しく理解している場合は、sort_metricが最小のレコードを選択する予定です。これらのレコードがさらにある場合は、IDが最小のレコードを選択します。二重の自己結合は、醜いin()リストを複製したくないことが原因です。これを実現する別の方法は、CTEを使用して、1つの自己結合のみを必要とすることです。
WITH ext AS (
SELECT id,f_key,name,sort_metric
FROM tmp.names
WHERE f_key IN ( 1, 3, 254, 257, 301, 273, 279 )
)
SELECT t1.*
FROM ext t1
WHERE NOT EXISTS (
SELECT *
FROM ext t2
WHERE t2.sort_metric <= t1.sort_metric
AND t2.f_key = t1.f_key
AND t2.id < t1.id
)
ORDER BY t1.id
LIMIT 1
;