顧客が発注した注文の割合を取得するクエリ

OrderStatusID という列を持つ Product テーブルがあります。

次に、クエリの例を示します。

SELECT * FROM dbo.Product where CustomerID = 10;

The problem: find the percentage of Products where OrderStatusID is not null.

0
1keydata.com/sql/sql-percent-to-total.html あなたを助けるかもしれない
追加された 著者 box86rowh,

4 答え

declare @total numeric(10,2)
select @total =count(*) from orders

select customerID, cast(100*count(*)/@total as numeric(10,2)) as Percentage
from orders
where customerID=10
group by customerID
1
追加された
SELECT CAST(COUNT(OrderStatus) AS FLOAT)/COUNT(*)*100 Percentage
FROM dbo.Product
WHERE CustomerID = 10
1
追加された

最も簡単な方法は次のようなものです

SELECT 100*Count(OrderStatusID)/(SELECT count(*) FROM dbo.Product) FROM dbo.Product;

それが役に立てば幸い

1
追加された
SELECT
    SUM(CASE WHEN CustomerID=10 THEN 1 ELSE 0 END)/COUNT(CustomerID)
    as Percentage
FROM dbo.Product
0
追加された