どうですか?テラデータのrow_numberを修飾する方法
私は決してrow_number()/ rank()を使用したことがなく、いくつか質問があります。
私は、Teradataの中でこのクエリをしようとしています:
select sit_site_id
, count(distinct shp_shipment_id)
from WHOWNER.BT_SHP_SHIPMENTS
group by sit_site_id
QUALIFY RANK() OVER (PARTITION BY sit_site_id
ORDER BY count(distinct shp_shipment_id)) = 3
をしかし、結果は次のとおりです。「テーブル内のデータなし」。
最初の3つのsit_site_id値をより多くのshp_shipment_idで取得したいと考えています。
ここで私のエラー
ありがとうございます!
GROUP BYはsite_idごとに1つの行を返します.3行目を取得しようとすると、もちろん行が返されません。おそらく、3つの最も高いカウントを返す 'QUALIFY RANK()OVER( ORDER BY count(distinct shp_shipment_id))<= 3'のようなものがほしいでしょう。 – dnoeth
各 'shipment_id 'ごとに上位3つの' site_id'が必要ですか?サンプルデータと所望の出力を親切に共有する。 – zarruq