ITmembers.net 아카이브 · 2002–2009

질문과 답변

[re] 테이블에서 지정한 필드 목록의 합을 불러오는 식에 대해서요..

한 리그에 같은 팀은 없죠? 다른 리그에 같은 팀은 있을 수 있지만.
그럼 쿼리만으로 해결 가능합니다.

1 리그에도 1 팀이 있고.. 2 리그에도 1팀이 있는 경우

SELECT league,team,sum(hit) as hit,sum(abi) as abi
  FROM 테이블명
  WHERE team = '1'
  GROUP BY team,league

저렇게 쿼리를 날리면 결과는....

league        team        hit        abi
    1               1            4           5
    2               1            1           3

이런 식으로 나옵니다. 근데 1리그의 1팀만을 보고 싶으신거죠?
그럼 저기서 where 로 1리그만 주면 되겠죠. 아래 최종 쿼리입니다.

SELECT league,team,sum(hit) as hit,sum(abi) as abi
  FROM 테이블명
  WHERE team = '1' AND league = '1'
  GROUP BY team,league //where 절에서 이미 조건을 걸었기 때문에
                                     //굳이 league 를 그룹으로 안묶어도 결과는 나옵니다.
결과는..

league        team        hit        abi
    1               1            4           5


>http://www.yagootj.com/record/list.php
>
>밑에 질문드린 사람입니다.
>
>select league,team,name,sum(ab) as s_ab,sum(hit) as s_hit from $tablename ".$que_league."  ".$que_team."".$que_name." GROUP BY name
>
>동명이인문제는 그냥 이름옆에 점이나 약자 표시하는것으로 해결할려구 합니다.
>
>그런데 이번에는요.. 팀의 누적기록이 문제라.. 해결방법이 없나 해서 여쭙습니다.
>
>동명이인문제가 해결될수 없으면 이것두 안되는 것은 알겠는데요..
>
>이런식의 해결은 어떨까 해서 먼저 여쭙습니다.
>
>현재 리그와 팀은 숫자형태로 db 저장하고 리스트에 뿌려줄때만 텍스트로 전환을 합니다.
>
>리그는 1,2,3,4 로 구분했고 팀도 각리그마다 순서대로 1,2,3,4..... 이렇습니다.
>
>이러면  팀으로 그룹지을경우 리그가 달라도 팀번혹 같으면 같이 합싱이 되는거 맞죠.. 그래서 이런방식은 아될거 같구요..
>
>team2이라는 필드를 하나만들고
>
>insert.php에서
>
>리그가 1이고 팀이 1이면 team3는 11
>리그가 2이고 팀이 1이면 team3는 21
>
>이런식으로 해서 group by team3 로 하면.. 가능하겠죠?
>
>그리고 list에서 팀명을 뿌려줄때 기존 team 이 아니라 team3를 불러오면 되구요..
>
>먼저 덥석 해보기가 겁나서 먼저 고수님들의 조언을 구합니다.
>이미 입력이 시작되서 최대한 안건드리고 할 생각이거든요

댓글 2