모두 잘하고 있습니다.id가 다른 경우에만 합계 열
나는 다음과 같은 출력이 ...
+---------+--------------+--------------+-----------+---------+----------+ | ord_num | signoff_date | program_name | prod_desc | tx_comp | priority | +---------+--------------+--------------+-----------+---------+----------+ | 1234567 | 2012-08-12 | ilearn | run | 1 | 1 | | 1234567 | 2012-08-12 | ilearn | plan | 1 | 1 | | 1234568 | 2012-08-12 | other | run | 1 | 1 | | 1234569 | 2012-08-12 | other | run | 0 | 1 | +---------+--------------+--------------+-----------+---------+----------+
는 내가 뭘하고 싶은 것은 한 번 독특한 "ord_num"당 tx_comp
열 SUM
입니다 있습니다.
이제 업무 유형에 따라 sum
을 사용하므로 GROUP BY ord_num
을 사용할 수 없습니다.
내가 이전에 ord_num
이 다른 경우 합이 무엇인지 알아야 할 필요가 있습니까?
모든 아이디어는 크게 감사하겠습니다.
감사합니다.
* 난 후 오전
+--------------+------+------+---------+ | signoff_date | run | plan | tx_comp | +--------------+------+------+---------+ | 2012-08-12 | 3 | 1 | 3 | +--------------+------+------+---------+
EDIT *
SELECT
signoff_date,
SUM(IF(prod_desc = 'run', 1, 0)) AS run,
SUM(IF(prod_desc = 'plan', 1, 0)) AS plan,
SUM(tx_comp) AS tx_comp
FROM
(
SELECT
ord_num,
signoff_date,
program_name,
prod_desc,
tx_comp,
priority
FROM
test.orders
LEFT JOIN test.tx_comp USING (ord_num)
) AS grp
분명히
하지 원하는 출력은 ...
+--------------+------+------+---------+ | signoff_date | run | plan | tx_comp | +--------------+------+------+---------+ | 2012-08-12 | 3 | 1 | 2 | +--------------+------+------+---------+
하나의 쿼리에서 다른 기준에 따라 서로 다른 합계를 원하십니까? –
@MarcB 예 맞습니다 ... – mybigman
"ord_num이 다른 경우에만"- 무엇부터? 이전 행? –