내가 물었다 된 유사한 알고 이전에 대답하지만 몇 시간에도 불구하고 아직도 각 증권 입찰 관련 입찰자의 최근 로그인 절차를 선택 들어
Select StockBids.* along with the
MOST RECENT MemberSignIns.Lat/Long
from the following two tables
wWhere StockBids.MemberID = 'MSFT'
는 테스트 데이터
을위한
http://sqlfiddle.com/#!6/7b9c7/2를 참조하는 방법을 알아낼 수 없습니다
전체 설명은 StockBids.ID = 24, 26 28
행이어야하며 MemberID 4는 두 StockBid.ID = 24 and 28
을 제출 했으므로이 두 행의 최신 /에서 파생 된 40.692259/-73.766641
의 Lat/Long 값을 가져야합니다.
StockBids
ID MemberID EntityAbbrev BidPrice BidShares
24 4 MSFT 7.43 10
25 4 AAPL 7.43 10
26 5 MSFT 7.36 20
27 6 AAPL 7.29 30
28 4 MSFT 7.22 40
내가
ROW_NUMBER
를 사용하여 각 행에 추가 번호를 추가 StockBids.MemberID = MemberSignIns.MemberID의 모든 다음
SELECT s.*,m.*
FROM
(
SELECT *,ROW_NUMBER()OVER(PARTITION BY MemberID ORDER BY ID) RowNum
FROM StockBids
) s
JOIN
(
SELECT *,ROW_NUMBER()OVER(PARTITION BY MemberID ORDER BY ID) RowNum
FROM MemberSignIns
) m
ON s.MemberID=m.MemberID AND s.RowNum=m.RowNum
먼저 사용
MemberSignIns
ID MemberID UTC Lat Long
11 4 6/23/17 16:23 40.736999 -73.875247
12 4 6/23/17 16:32 40.782117 -73.980739
13 5 6/23/17 16:40 40.643339 -73.977714
14 6 6/23/17 16:48 40.760262 -73.993287
15 7 6/23/17 16:56 40.722414 -73.992452
16 4 6/23/17 17:04 40.692259 -73.766641
은 또한 당신의 예상 결과 – TheGameiswar