特定の基準(企業ID、職種、性別、時間枠、状態ID、状態)を満たすデータセット内の女性の割合を調べようとしています。種類。これを行うには、この基準を満たす女性の合計数を、基準を満たす男性と女性の合計数で除算しなければなりません。 私は現在、親切とid = 0で、すべての時間から、エンジニアリングでは、同社20から#女性を見つけるために、データを照会し、その基準を満たす合計#男性と女性で、それを分割しています:SQL - 特定の列の値が一致する同じデータセットのデータを分割する
/* number of females in eng. jobs */
(SELECT 1.0*sum(hiring_sample_count)
FROM metrics m
JOIN category c ON
m.job_id = c.job_id
AND m.company_id = 20
AND c.standard_job_cat = 'Engineering'
AND dimension_value = 'Female'
AND time_frame = 'ALLTIME'
AND state_kind = 0
AND state_item_id =0)/
/* number of m+f in eng */
(SELECT sum(hiring_sample_count)
FROM metrics m
JOIN category c ON
m.job_id = c.job_id
AND m.company_id = 20
AND c.standard_job_cat = 'Engineering'
AND (dimension_value = 'Female'
OR dimension_value = 'Male')
AND time_frame = 'ALLTIME'
AND state_kind = 0
AND state_item_id =0))
問題は、すべての職種、種類、IDにわたってデータセット内のすべての企業でこれを計算したいということです。私はそれらを自分で指定せずにこれを行う方法がわからず、誰かが助けることができるかどうか疑問に思っていました。私はDBMSに依存しない、クロスプラットフォームのSQLクエリツールであるSQLWorkbenchを使用しています。いくつかの助けに感謝します(私はTSQLまたはPL/pgSQLを使用していません)。
フォーマットにもお詫び申し上げます。