假设我有一个跨三个表有多个连接的查询:
SELECT
    main_data.id,
    main_data.dt,
    main_data.seq_num,
    main_data.sale_amt,
    main_data.sale_cd,
    promo.promo_cd,
    payment.card,
    payment.priority
FROM
    main_data
INNER JOIN promo
    ON promo.id = main_data.id
    AND main_data.dt >= promo.start_dt
    AND main_data.dt <= promo_end_dt
INNER JOIN payment
    ON payment.sale_cd = main_data.sale_cd
    AND payment.card = main_data.card
WHERE 
    main_data.dt BETWEEN '2013-10-12' AND '2013-10-12'
基本上,销售与付款方式 ( payment) 和促销 ( promo) 相关联。将促销代码映射到符合条件的付款(一对多关系)存在一些问题。  
此时,可能存在来自 的重复记录main-data。因此,我需要payment.priority使用价值最低的那个。如何仅提取该字段值最低的行?我尝试将其嵌套为子查询,但无法使其正常工作。数据库本身是完全静态的,我无法以任何方式更改架构。