【发布时间】:2020-01-24 03:07:29
【问题描述】:
我需要找到作为至少一次旅行的出发地点的不同城市名称的总数。当城市是旅行第一站的出发地时,它就是出发地。
到目前为止,这是我的代码:
SELECT DEPARTURE
FROM TRIPLEG
WHERE LEGNUM = 1;
当我测试这个 select 语句时,结果显示了所有的出发地点(即使不止一次提到了一个城市)。
如何让城市名称只显示一次?
【问题讨论】:
我需要找到作为至少一次旅行的出发地点的不同城市名称的总数。当城市是旅行第一站的出发地时,它就是出发地。
到目前为止,这是我的代码:
SELECT DEPARTURE
FROM TRIPLEG
WHERE LEGNUM = 1;
当我测试这个 select 语句时,结果显示了所有的出发地点(即使不止一次提到了一个城市)。
如何让城市名称只显示一次?
【问题讨论】:
你的意思是像
SELECT DISTINCT DEPARTURE
FROM TRIPLEG
WHERE LEGNUM = 1;
【讨论】:
你应该使用 group by
SELECT DEPARTURE
FROM TRIPLEG
WHERE LEGNUM = 1
GROUP BY DEPARTURE;
【讨论】:
group by 或distinct 没有区别。他们都在这里做同样的事情。如果没有聚合函数,group by 会有点混乱