gpt4 book ai didi

SQL - 如何计算是和否项目

转载 作者:行者123 更新时间:2023-12-01 06:25:28 24 4
gpt4 key购买 nike

我正在使用 SQL Server 2008。

我正在编写一个查询,我需要计算有多少是 (1) 和多少否 (0 或 NULL)。

SELECT B.Brand, B.BrandID, COUNT(M.ModelID) AS TotalModels
FROM Brands B LEFT JOIN Models M ON B.BrandID = M.BrandID
GROUP BY B.Brand, B.BrandID
ORDER BY B.Brand

模型表中还有一个名为 IsBestValue 的字段,它将为 NULL、0 或 1。我希望能够计算 TotalBestValueYes、TotalBestValueNo 和 TotalBestValueNULL。

很久以前......我曾经使用过类似......
(CASE WHEN IsBestValue = 1 END) // ADD ONE TO TotalBestValueYes
(CASE WHEN IsBestValue = 0 END) // ADD ONE TO TotalBestValueNo
(CASE WHEN IsBestValue = NULL END) // ADD ONE TO TotalBestValueNULL

在时尚中使用 CASE 是个好主意吗?馊主意?矫枉过正?

有没有更好的方法来计算是、否和空值?

最佳答案

是完美的案例CASE (双关语意)。
CASE是一个非常优化的运算符,专为这样的使用场景而设计。

条件计数的正常语法如下:

SELECT SUM (CASE WHEN x=y then 1 ELSE 0 END) as 'XequalsY'
...

关于SQL - 如何计算是和否项目,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/7162076/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com