2016-02-22 33 views
0

幫助

確定哪些是由最大數量的航班選擇不同的值,這是不包括在同一表中的列

  1. 提供服務的路由數目 - B和B - A的被認爲是同一條路線
  2. 只能使用行程表

我的表旅行cointains(trip_no,id_comp,飛機,town_from,town_to,TIME_OUT,time_in)

我有這個查詢,但我需要選擇不同的值,這是不包括在同一張表的列中。

SELECT COUNT(trip_no) AS NumFlights,town_from,town_to 
FROM trip 
GROUP BY town_from, 
      town_to 
ORDER BY numflights DESC; 

,這是我的結果集

NumFlights, town_from, town_to 
'4', 'Moscow', 'Rostov' 
'4', 'London', 'Singapore' 
'4', 'Rostov', 'Moscow' 
'4', 'Singapore', 'London' 
'1', 'Paris', 'Rostov' 
'1', 'Paris', 'London' 
'1', 'Vladivostok', 'Rostov' 
'1', 'Rostov', 'Paris' 
'1', 'London', 'Paris' 
'1', 'Rostov', 'Vladivostok' 
+0

你必須同時提供數據採集和慾望輸出。請閱讀[** How-to-Ask **](http://stackoverflow.com/help/how-to-ask) \t \t這裏是[** START **](http ://spaghettidba.com/2015/04/24/how-to-post-at-sql-question-on-a-public-forum/) –

+0

問題是什麼?你想消除重複路線?只顯示'A-> B'並移除'B-> A'? –

+0

我需要喲跳過值,巴黎到羅斯托夫是相同的路線比羅斯托夫到巴黎我需要組這個,我不知道如何做到這一點D: –

回答

1

在MySQL中,你可以做你想做使用least()greatest()什麼:

SELECT COUNT(trip_no) AS NumFlights, 
     LEAST(town_from, town_to) as town_1, 
     GREATEST(town_from, town_to) as town_2 
FROM trip 
GROUP BY LEAST(town_from, town_to), 
     GREATEST(town_from, town_to) 
ORDER BY numflights DESC; 
+0

我也有這個解決方案,但不知道如果OP要'8','莫斯科','羅斯托夫' –

+0

哦,非常感謝你:D我不知道很多sql:D,我不知道這個函數: D最小和最大:D非常感謝你 –

+0

是的這個解決方案是我想要的:D –

相關問題