2017-04-20 64 views
1

下面的代码行给我所需的时间没有重复,帮助我避免实际日期。来自不同行的SQL不同计数?

SELECT DISTINCT TO_CHAR(Start_Date_Time, 'HH:MI AM') AS StartTime 
    FROM Section 
    GROUP BY Start_Date_Time; 

然而,当我试图在那些指定的时间用下面的代码算上不同的课程数,计数增加重复的行开始时间。

SELECT DISTINCT TO_CHAR(Start_Date_Time, 'HH:MI AM') AS StartTime, 
    COUNT(Course_No) 
    FROM Section 
    GROUP BY Start_Date_Time; 

我不想要任何重复的开始时间。任何帮助,将不胜感激。

回答

3

你想这样的:

SELECT TO_CHAR(Start_Date_Time, 'HH:MI AM') AS StartTime, COUNT(Course_No) 
FROM Section 
GROUP BY TO_CHAR(Start_Date_Time, 'HH:MI AM'); 

在第一个查询中,GROUP BY是不是真的这样做了。它为每个日期/时间组合生成一行。 select distinct然后减少行数。没有group by,你会得到相同的结果。

+0

谢谢你。我不知道你可以用这样的陈述来使用一个组。 – HamHat