Javascript 从包含7列的sql表中选择3列的唯一值

Javascript 从包含7列的sql表中选择3列的唯一值,javascript,mysql,node.js,Javascript,Mysql,Node.js,这就是我的桌子的样子 我想获得始发地、目的地和航班日期的唯一“集合” 因此,对于所示的表,我的查询应该返回{['BLR','DEL',2019-01-10'],['BLR','DEL','2019-01-11']}在MySQL中,这应该可以做到: SELECT DISTINCT origin, destination, flight_date FROM flights 或者: SELECT origin, destination, flight_date FROM flights GROUP

这就是我的桌子的样子

我想获得始发地、目的地和航班日期的唯一“集合”


因此,对于所示的表,我的查询应该返回{['BLR','DEL',2019-01-10'],['BLR','DEL','2019-01-11']}

在MySQL中,这应该可以做到:

SELECT DISTINCT origin, destination, flight_date FROM flights
或者:

SELECT origin, destination, flight_date 
FROM flights
GROUP BY origin, destination, flight_date
DISTINCT的基本意思是“确保行是唯一的”,而使用GROUPBY的优点是,可以使用聚合函数(求和、平均等)。还可以使用have添加其他条件

例如:

SELECT origin, destination, flight_date, SUM(time_bucket) AS time_bucket_total
FROM flights
GROUP BY origin, destination, flight_date
HAVING SUM(time_bucket) > 3

这将返回每行的时间桶值总和,并且仅返回该总和大于3的条目。

有效!以上两种方法中的一种比另一种更有效吗?@Khadar111这两种方法的性能差别很小。我个人喜欢上面的一个,但第二个可能提供更多flexiblity@NappingRabbit您能否详细说明第二种方法如何提供更大的灵活性?