입금, 출금, 합계 관련 쿼리 질문 드려요

입금, 출금, 합계 관련 쿼리 질문 드려요

QA

입금, 출금, 합계 관련 쿼리 질문 드려요

본문

안녕하세요~

작업을 거듭할수록 평소 겪어보지 않았던 작업을 많이 하게되네요.

이번엔 가입 회원을 손익 별로 정렬을 하려는데요.

회원 테이블과 입출금 테이블이 분리되어 있는 상황입니다.


최고 입금액순으로 정렬은 

select * , (select sum(p_money) from money_log where p_userid=member.p_userid and p_state = 1 and p_status = 'Y' ) as money from `member_list` as member where `p_status` = 'N' order by `money` DESC limit 0, 50

 

최고 출금액순으로 정렬

select * , (select sum(p_money) from money_log where p_userid=member.p_userid and p_state = 2 and p_status = 'Y' ) as money from `member_list` as member where `p_status` = 'N' order by `money` DESC limit 0, 50
이런식으로 작업을 했는데요.

 

어떤식으로 쿼리를 작성하면 높은 수익순으로 정렬이 가능할까요?

고수님들 알려주세요~

 

이 질문에 댓글 쓰기 :

답변 1

입금액은 + 

출금액은 - 로 처음부터 저장을 했으면,

sum() 으로 간단히 해결이 될 텐데.. 쉽지 않겠네요..^^;

아래 처럼하면 되지 않을까요? 직접 해보지 않아서 확인하진 않습니다..

select * ,

(select sum(p_money) from money_log where p_userid=member.p_userid and p_state = 1 and p_status = 'Y' ) as money1,

(select sum(p_money) from money_log where p_userid=member.p_userid and p_state = 2 and p_status = 'Y' ) as money2,

(money1-money2) as profit

from `member_list` as member where `p_status` = 'N' order by `profit` DESC limit 0, 50

답변을 작성하시기 전에 로그인 해주세요.
전체 728
QA 내용 검색
filter #sql ×

회원로그인

(주)에스아이알소프트 / 대표:홍석명 / (06211) 서울특별시 강남구 역삼동 707-34 한신인터밸리24 서관 1404호 / E-Mail: admin@sir.kr
사업자등록번호: 217-81-36347 / 통신판매업신고번호:2014-서울강남-02098호 / 개인정보보호책임자:김민섭(minsup@sir.kr)
© SIRSOFT