2016-06-21 17 views
3

私は最近SQLの使用を開始し、質問があります。2つのSQLクエリーを1つの結果に結合するにはどうすればよいですか?

私の最初のクエリ出力はすべての製品

SELECT 
    COUNT(*) 
FROM 
    products; 

私の2番目のクエリは、私が在庫切れの製品の何パーセントを計算したいの在庫商品のうち

SELECT 
    COUNT(*) 
FROM 
    products 
WHERE 
    qty = 0; 

を出力。これまでに

私はこの式を使用します。私はこれでそれを試してみたが、これは

SELECT 
    (
    SELECT 
    COUNT(*) 
    FROM 
    products 
    WHERE 
    qty = 0; 
) * 100/COUNT(*) 
FROM 
    products; 
+0

MySQLやOracleの?関与していない製品にはタグを付けないでください。 – jarlh

+0

@ jarlh私はOracle SQL Developerを使用しています – minz

答えて

4

を働いていない

割合= out_of_stock_products * 100/

all_productsを試してみよう:

SELECT COUNT(CASE WHEN qty = 0 THEN 1 END) * 100.0/COUNT(*) 
FROM products 

上記のクエリでは、在庫切れ製品の数を計算するために条件付き集計を使用しています。

+0

あなたの答えをありがとうが、これは私のためには動作しません。申し訳ありませんが私の悪い私はMySQLのタグが、私はオラクルを使用 – minz

+0

ああありがとうございます。 – minz

0

はこれを試してみてください;)

SELECT 
    SUM(IF(qty = 0, 1, 0)) * 100/SUM(1) AS per 
FROM 
    products; 
0
SELECT SUM(CASE WHEN qty = 0 THEN 1 ELSE 0 END) * 100.0/COUNT(*) as percent 
FROM products; 
関連する問題