個別の値を数えるという問題の解決策を探して、この質問に出くわしました。答えを探しているときに、この投稿 に出くわしました .最後のコメントを参照してください。私はそれをテストし、SQLを使用しました。それは私にとって非常にうまく機能し、ここで別の解決策を提供することにしました.
要約すると、 DENSE_RANK() を使用して 、 PARTITION BY 付き グループ化された列、および ORDER BY 両方 ASC および DESC カウントする列:
DENSE_RANK() OVER (PARTITION BY drugClass ORDER BY drugName ASC) + DENSE_RANK() OVER (PARTITION BY drugClass ORDER BY drugName DESC) - 1 AS drugCountsInFamiliesプレ>これを自分用のテンプレートとして使用します。
DENSE_RANK() OVER (PARTITION BY PartitionByFields ORDER BY OrderByFields ASC ) + DENSE_RANK() OVER (PARTITION BY PartitionByFields ORDER BY OrderByFields DESC) - 1 AS DistinctCountプレ>これがお役に立てば幸いです!