Warning: Undefined array key "mobile_dir" in /home/kagla/new-sir/old/common.php on line 315
입금, 출금, 합계 관련 쿼리 질문 드려요

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

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

QA

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

답변 1

본문

안녕하세요~

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

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

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


최고 입금액순으로 정렬은 

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

답변을 작성하시기 전에 로그인 해주세요.
QA 내용 검색
질문등록
전체 129,406
© SIRSOFT
현재 페이지 제일 처음으로