你能在另一个公式中使用计数结果吗?

时间:2016-02-08 18:55:52

标签: sql count multiplying

SELECT DISTINCT Course_NO, count(section_ID) Sections
FROM SECTION
group by course_No
having count(section_id) > 3;

我需要使用count(section_id)的值来确定总容量,方法是将每个值x与每个部分的容量相乘。

2 个答案:

答案 0 :(得分:0)

您是否考虑过使用""声明?

;with SampleData as 
(
SELECT DISTINCT 
    Course_NO, 
    COUNT(section_ID) Sections 
    FROM SECTION 
    GROUP BY course_No 
    HAVING COUNT(section_id) > 3
)
SELECT * FROM SampleData

这样您就可以轻松地重复使用这些计数。

答案 1 :(得分:0)

在分组时,您不必使用DISTINCT,您的查询可以正常使用。

SELECT *
FROM table1
WHERE first_name='John'

SELECT *
FROM table1
WHERE last_name='smith'

SELECT *
FROM table1
WHERE country='US'

现在,要使用我所理解的COUNT()值,您希望course_NO的乘积发生section_ID,所有section_ID发生的次数超过3次。您已经拥有自己查询的COUNT,只需显示包含该产品的另一列:

SELECT
    Course_NO
    , COUNT(section_ID) Sections
FROM
    SECTION
GROUP BY
    course_No
HAVING
    COUNT(section_id) > 3;

或者,如果您有一个固定数字要与计数相乘,请将capacity列中的course_NO替换为该值(上面的第二个查询)