为简化起见,有两个表格“交易”和“汇率”。
trades.userid并rates.fee通过trades.rateid=rates.rateid
问题是 SELECT 不会返回唯一的值,但它们都是可能的。
SELECT r.fee
FROM rates AS r
LEFT JOIN trades AS t
ON r.rateid = t.rateid
WHERE t.userid=(somevalue)
DISTINCT或者TOP 1由于订购混乱,这里无法选择。这里不需要订购。
如何选择正确和独特?
我只是想rates.fee通过给定trades.rateid一些来选择合适的trades.userid
trades
------
userid rateid total
101 1
101 1
101 2
101 1
rates
-----
rateid fee
1 0.90
2 0.80
3 0.70
UPDATE trades
SET total = (someformula) * (above SELECT query goes here)
WHERE userid = (somevalue)
谢谢你。