有两个表
User
========
uid
name
Data
=========
distance
timeSpend
isShow
uid (FK)
我想获得以下citeria
的距离的订单列表(DESC)1 ) in a specific timeSpend Range
2 ) group by the uid (Only select the longest Distance)
3 ) only isShow
尝试了以下查询,但没有运气。谢谢你的帮助
SELECT User.name, Data.distance, Data.timeSpend
FROM FROM User,Data
WHERE id IN (
SELECT MAX(distance) FROM Data GROUP BY uid WHERE isShow = true
)
AND User.uid = Data.uid
ORDER BY Data.distance DESC
答案 0 :(得分:1)
您必须使用您喜欢的值填充between
语句
SELECT u.name, MAX(distance) as max_distance
FROM User u
join Data d on u.uid = d.uid
WHERE isShow = 1
and d.timeSpend between 1 and 2
group by u.uid, u.uname
ORDER BY max_distance DESC