다음 표 (portfolio
)를 고려하십시오. 주식 시장 투자자를위한 거래 로그입니다. 매일 그 중 하나 buy
의, sell
의 또는 hold
의 (아직 판매되지 않는 이전에 구입 한 주식) (sp100_id
로 식별) 주식 :어떤 주식이 매수되었지만 아직 판매되지 않았는지 데이터베이스에서 읽는 방법은 무엇입니까?
_date sp100_id action price
-----------------------------------
2011-03-21 11 buy 10.50
2011-03-21 55 buy 60.00
2011-03-21 99 buy 5.15
2011-03-22 11 sell 9.80
2011-03-22 55 sell 61.50
2011-03-22 99 hold 5.60
2011-03-23 1 buy 95.00
2011-03-23 2 buy 25.60
2011-03-23 99 hold
2011-03-24 1 sell 96.00
2011-03-24 2 hold
2011-03-24 99 hold
2011-03-25 11 buy 8.90
2011-03-25 2 sell 28.00
2011-03-25 99 hold
로그가 2011-03-25
에서 멈 춥니 다. 이 주식이 무엇인지 가격에 어떤 날짜에 우리가이 수동으로 할 경우, 원래는
를 구입 - 어떤 주식이 여전히 포트폴리오 에 남아 있습니다 - 을 : 2011-03-26
를 들어, 내가 알고 싶은 - 재고 11
가 2011-03-21
에서 구입한다 , 2011-03-22
에 판매하지만, 8.90
에 대한 2011-3-25
다시 구입하고 우리는 이후 판매하지 않은, 그래서 2011-03-26
에 포트폴리오에 여전히 - 재고 55
가 2011-03-21
에서 구입 그래서 더 이상은 포트폴리오에 2011-03-22
에 판매 - 재고 99
은 2011-03-21
에서 구입합니다.
sp100_id buy_date buy_price
-------------------------------
11 2011-03-25 8.90
99 2011-03-21 5.15
: 재고
1
및
2011-03-26
그래서 2011-03-26
의 포트폴리오 구성하기 전에 2
모두 구입 및 판매 - 그것은 5.15
의 가격 2011-03-26
에 포트폴리오에 여전히 있도록 D 우리는 그것을 보유하고 판매 적이 없다
제 질문은 : 위의 결과를 테이블에서 반환 할 수있는 쿼리는 무엇입니까?
일이 참으로 깨끗한 :-) 감사하는 스마트하고 깨끗한 방법 – InSane
이잖아입니다! – Pr0no