2013-08-01 2 views
2

미 지불 수수료를 나타내는 리포트를 생성합니다. 수수료 유형, 그 수수료 유형에 대한 고정 금액 금액, 해당 수수료 유형에 대한 최종 금액 및 최종 잔액 해당 수수료 유형에 대해 지불해야합니다.합계 방법, MySQL의 Group_Concat에서 함수를 빼기

여기 클래스 테이블의 클래스 이름과 같은 5 개의 테이블에서 데이터를 가져오고 있습니다. & 입학 테이블의 학생 이름, 수수료 테이블의 수수료 유형, studentfees 테이블의 수수료 유형 고정 금액 및 마지막으로 수수료 유형에 대한 지불 금액 수수료 징수 표에서.

나는 합계와 뺄셈 연산을 통해 select statment에 수수료 유형 이름을 언급함으로써 부분 결과를 생성 할 수 있습니다.

전체 데이터베이스와 그 결과를 생성하는 내 쿼리가 있습니다. plz보기 ** @mysql query 선택 진술서 나는 수수료 유형을 수동으로 언급했다. 하지만 수수료 유형을 열 이름으로 언급하지 않고 결과를 생성하려고합니다. 내가 한 일을했다이를 위해

, 내가 열 이름과 같은 한 줄에 모든 요금 유형을 발생합니다이

set @sqlList = null;SELECT GROUP_CONCAT(concat('tsf.', Replace(FeeName,' ',''))) INTO @sqlList FROM tbl_feevars; 

이 같은 SQL 변수 에 모든 수수료 유형을 촬영했다. 그리고 마침내 내가 기대하고있는 출력을 생성하는 코드를 작성했지만 과 같은 오류가 발생했습니다. 오류 코드 1064 : SQL 구문에 오류가 있습니다.

이 내 SQL 쿼리에서 오류가 무엇인가,

Expected Output Code

사람이 제발 말해 내 마지막 코드입니다. 그리고 나에게 제안한다면 ?? 이 보고서를 작성하는 다른 방법.

답변

1

원하는 출력은 무엇입니까?

나는 http://www.sqlfiddle.com/#!2/a26c7/15

내가 생각이 didle, 그 @이 ... 또한, 당신은 배열을 사용하는 것이 좋다 싶어하지 않는에서 작업 ... 당신은 사용해야 할 MySQL은 배열 같은 것이 없음 만들었다 배열을 시뮬레이트하기 위해 LOOP 또는 TMP TABLE. 이 질문에 대한 답변을 4u :

How can I simulate an array variable in MySQL?

+0

끝이 정확한지 확인하십시오. – jaczes

+0

조기 대응을 위해 @jaczes에 감사드립니다. 그러나 예상되는 출력은 각 수수료 유형, 수수료 유형 고정 요금, 수수료 유형 및 잔액 금액을 지불해야합니다. –

+0

http://www.sqlfiddle.com/# 참조 ! 2/a26c7/16 there'@ sqlList','@ sqlList1'의 내용을 가지고 있습니다 - 아마도 루프 안에서 할 필요가 있습니다. – jaczes