タグ付けされた質問 「top-n」

3
パンダは各グループ内で上位n件のレコードを取得します
次のようなパンダDataFrameがあるとします。 >>> df = pd.DataFrame({'id':[1,1,1,2,2,2,2,3,4],'value':[1,2,3,1,2,3,4,1,1]}) >>> df id value 0 1 1 1 1 2 2 1 3 3 2 1 4 2 2 5 2 3 6 2 4 7 3 1 8 4 1 次のように、各IDの上位2レコードを含む新しいDataFrameを取得します。 id value 0 1 1 1 1 2 3 2 1 4 2 …

5
Oracle SELECT TOP 10レコード
OracleのSQLステートメントに大きな問題があります。他の選択ステートメントからリストにないSTORAGE_DBで注文された上位10件のレコードを選択したい。 これはすべてのレコードで正常に機能します。 SELECT DISTINCT APP_ID, NAME, STORAGE_GB, HISTORY_CREATED, TO_CHAR(HISTORY_DATE, 'DD.MM.YYYY') AS HISTORY_DATE FROM HISTORY WHERE STORAGE_GB IS NOT NULL AND APP_ID NOT IN (SELECT APP_ID FROM HISTORY WHERE TO_CHAR(HISTORY_DATE, 'DD.MM.YYYY') = '06.02.2009') しかし、私が追加しているとき AND ROWNUM <= 10 ORDER BY STORAGE_GB DESC なんらかの「ランダム」レコードを取得しています。制限は注文の前に行われるためだと思います。 誰かが良い解決策を持っていますか?その他の問題:このクエリは非常に遅い(1万レコード以上)
144 sql  oracle  top-n 
弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.