我有一個查詢返回一些與特定用戶相關的用戶(Bob)。mysql:order by nearest id
我需要檢索最近的記錄,也就是說,我必須返回ID列接近Bob的ID的用戶。
例如:
ID
Tom 5
Mike 8
Bob 10
Jack 12
Brian 13
查詢:
SELECT users.* FROM users
INNER JOIN neighboors on neighboors.neighboor_id = users.id #ignore this join, just to exemplify
WHERE neighboors.user_id = 10 # bobs id
ORDER BY something
LIMIT 3 # i want to return only the 3 nearest users (according to the table above:mike, jack and brian)
我怎麼能做到這一點?
更新
的邏輯是,用戶可以種樹,每棵樹都有一個物種。該查詢應返回已種植相同樹種的用戶。
爲什麼重要的命令靠近id?客戶想要這種方式:)沒有其他原因。
這是純粹的MySQL嗎?或者您是否也有應用程序語言? – 2012-03-24 06:44:56
即時通訊在軌道上使用紅寶石。雖然我沒有辦法只使用sql im與rails一起工作。我返回所有的用戶ID,然後我得到與紅寶石近ids和最後我查詢這個ids – 2012-03-24 07:06:51