2014-10-30 78 views
0

MYSQL選擇查詢我已經在MySQL下表:用SUM時間

ship_id| start time | plus time | 
---------------------------------------------- 
shp_01 | 14:00:00 | 00:30:00 | 
shp_02 | 02:00:00 | 00:30:00 | 

我要總結的開始時間和加上時間。 我需要以下的輸出:

shp_01 | shp_02 | 
14:30:00 | 02:30:00 | 

最終的結果,我想只有一個最大值

shp_01 | 
14:30:00 | 

那麼,怎樣才能通過使用只有一個查詢最終的結果?

+0

得到的結果和你的'開始time'和'加上time'數據類型?還有多少'ship_id'會在那裏? – 2014-10-30 15:05:08

+0

「加時間」的數據類型是什麼?您不能添加時間,但可以添加時間+間隔。 – Barmar 2014-10-30 15:06:41

+0

@Barmar數據類型是varchar(11) – 2014-10-30 15:19:48

回答

1

使用HAVING子句指定你的病情,當你需要

1
DROP TABLE my_table; 

CREATE TABLE my_table 
(ship_id INT NOT NULL AUTO_INCREMENT PRIMARY KEY 
,start_time TIME NOT NULL 
,plus_time TIME NOT NULL 
); 

INSERT INTO my_table VALUES 
(1 ,'14:00:00','00:30:00'), 
(2 ,'02:00:00','00:30:00'); 

SELECT * FROM my_table; 
+---------+------------+-----------+ 
| ship_id | start_time | plus_time | 
+---------+------------+-----------+ 
|  1 | 14:00:00 | 00:30:00 | 
|  2 | 02:00:00 | 00:30:00 | 
+---------+------------+-----------+ 

SELECT *, ADDTIME(start_time,plus_time) total FROM my_table ORDER BY total DESC LIMIT 1; 
+---------+------------+-----------+----------+ 
| ship_id | start_time | plus_time | total | 
+---------+------------+-----------+----------+ 
|  1 | 14:00:00 | 00:30:00 | 14:30:00 | 
+---------+------------+-----------+----------+ 
+0

酷...非常感謝你草莓.. – 2014-10-30 15:33:59