2013-05-26 1 views
0

각 테이블의 일일 총계를 다른 테이블로 가져 오려고합니다. 여기 고유 한 키워드로 두 개의 MySQL 데이터베이스 테이블을 결합하고 열을 합계로 더함

는 구조입니다 :

reports_location_temp : reports_location_total_daily

Table_Name:   Date:        Total_Count: 
London    2013-05-26 10:49:53    5000 
London    2013-05-26 10:49:53    2000 
Birmingham   2013-05-26 10:49:53    1000 
London    2013-05-26 10:49:53    5000 
Manchester   2013-05-26 10:49:53    50 
Birmingham   2013-05-26 10:49:53    500 

:

Table_Name:   Date:        Total_Count: 
London    2013-05-26 23:55:00    12000 
Manchester   2013-05-26 23:55:00    50 
Birmingham   2013-05-26 23:55:00    1500 

나는 여전히 MySQL의 주위에 내 방법을 배우고있다.

이 내가 시도 쿼리이지만 각 고유 TABLE_NAME에 대해 하나의 열을 골라이와 함께 도움을

UPDATE reports_Location_total_daily j1 INNER JOIN reports_location_temp l1 ON j1.Table_Name = l1.Table_Name SET j1.Total_Count = l1.Total_Count  

감사합니다. `Table_Name`에 의해 1 일, 그룹에서 선택하고 2 차 테이블을 UPDATE :

+0

왜이 개 요청을 기록하지? – user4035

+0

'insert into'명령을 조사하십시오. . . 중복 키에'. –

답변

0
CREATE TABLE sales 
(id INT NOT NULL AUTO_INCREMENT, 
location VARCHAR(40), 
today DATETIME NOT NULL, 
sales INT NOT NULL, 
PRIMARY KEY (id) 
) 
; 


INSERT sales (location,today,sales) VALUES ('London','2013-05-26',2000); 
INSERT sales (location,today,sales) VALUES ('Birm','2013-05-26',1000); 
INSERT sales (location,today,sales) VALUES ('London','2013-05-26',1500); 
INSERT sales (location,today,sales) VALUES ('London','2013-05-24',100); 
INSERT sales (location,today,sales) VALUES ('Birm','2013-05-24',200); 
INSERT sales (location,today,sales) VALUES ('London','2013-05-24',300); 

CREATE TABLE daily_totals 
(id INT NOT NULL AUTO_INCREMENT, 
location VARCHAR(40), 
today DATETIME NOT NULL, 
totalsales INT NOT NULL, 
PRIMARY KEY (id) 
) 
; 

DELETE FROM daily_totals; 

INSERT INTO daily_totals (location,today,totalsales) 
SELECT location, 
DATE(today), 
SUM(sales) 
FROM sales 
GROUP BY location,DATE(today)