假设我有这些表:
markets (id)
user_markets (user_id, market_id)
users (id)
我可以通过带有user_markets的INNER JOIN进入用户市场。
现在我向user_markets
添加两列:price_above
和price_below
以及markets
列:last_price
现在我们有:
markets (id, last_price)
user_markets (user_id, market_id, price_above, price_below)
users (id)
我现在的目标是获取({1}} markets.last_price
的{{1}}和>=
price_above
的市场(针对用户)对应的<
行。
我尝试了不同的东西,但显然我总是得到错误的结果。
我希望这是有道理的。谢谢你的提示。
答案 0 :(得分:1)
如果我理解正确,这应该有效:
SELECT m.*, u.* FROM markets m
INNER JOIN users u ON u.id = um.user_id
INNER JOIN user_markets um ON um.market_id = m.id
WHERE m.last_price >= um.price_above OR m.last_price < um.price_below