给定下面的查询,dps _ marks 中可能有多个行具有相同的标记键,但是我们只希望针对第一个标记键进行连接。如果我使用这个查询并删除 top 1和 ORDER BY,我会得到一个 mbg.mark_ value 的值,但是按原样运行,它总是返回 null
SELECT u.id, mbg.marker_value
FROM dps_user u
LEFT JOIN
(SELECT TOP 1 m.marker_value, um.profile_id
FROM dps_usr_markers um (NOLOCK)
INNER JOIN dps_markers m (NOLOCK)
ON m.marker_id= um.marker_id AND
m.marker_key = 'moneyBackGuaranteeLength'
ORDER BY m.creation_date
) MBG ON MBG.profile_id=u.id
WHERE u.id = 'u162231993'