2017-12-25 14 views
0

group by clause을 사용하지 않고 열 total을 사용하고 싶습니다. concat 문자열을 사용하고 싶지는 않습니다.mysql에서 group by 절을 사용하지 않고 mysql에서 총계를 계산하는 방법

내가 이런 종류의 원하는 결과를 찾고 : 여기

| customer id | project name | Product Name | Quantity | price | total | 
+--------------+--------------+--------------+----------+--------+----------+ 
|  9  | xyz   | ppn  | 2  | 2 | 4  | 
+--------------+--------------+--------------+----------+--------+----------+ 
| 11  | pqr  | xxx  | 2  | 2 | 4  | 
+--------------+--------------+--------------+----------+--------+----------+ 
|    |    |    |   |  |  8 |<=== Grand total 
+---------------------------------------------------------------------------+ 

는 SQL 바이올린입니다 : http://sqlfiddle.com/#!9/30fdd5/2

+0

'group by'과 'concat()'이 서로 어떻게해야하는지 알지 못합니다. –

+0

다른 이름, 금액 및 가격을이 테이블과 연결하여 나중에 의미가 없으면 고객이 구매 한 모든 종류의 제품을 그룹 구성에 다른 가격으로 어떻게 표시 하시겠습니까? –

답변

4

나는 이것이 당신이 원하는 것을 생각 :

SELECT customer_id, project_name, product_name, quantity, 
     price, quantity * price as total 
FROM project_expenses_data 
UNION ALL 
SELECT NULL, NULL, NULL, NULL, NULL, sum(quantity * price) 
FROM project_expenses_data; 

100 %로 합계가 결과 집합의 마지막 행인지 확인하고 절 ORDER BY (customer_id IS NULL) ASC을 추가하십시오.

+0

훌륭한 위대한 답변 !!! 고마워요. – EaB