問題タブ [row-number]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
nhibernate - ROW_NUMBER OVER(ORDER BY列)が単にORDER BY列とは異なる結果の順序を返すのはなぜですか?
私はSQLServer2008を使用しており、永続層としてNHibernateを使用しています(この問題は純粋にSQLですが、私は信じています)。
問題を次のSQLステートメントに要約しました。
これは、ページングされた結果セットを取得するためにNHが生成するクエリの一部です。上記のステートメントは私に次の結果を与えます:
ただし、ROW_NUMBER()OVER(ORDER BY this_.IsActive)(NHが最初のページで結果を取得するために生成するもの)を省略すると、結果に2つのまったく異なるテーブルエントリが表示されます。
戻り値
これは私を完全に混乱させ、アプリのバグにつながり、検索の最初のページと2番目のページの最初の要素と同じCampsiteエントリを取得します。
同じORDERBY句がROW_NUMBEROVER()式内で異なる動作をするのはなぜですか?
sql - 興味深い Row_Number() バグ
Stack Exchange Data Explorerで遊んでいて、次のクエリを実行しました:
https://data.stackexchange.com/stackoverflow/query/2820/rising-stars-top-50-users-ordered-on-rep-per-day
結果に注目してください。row_number() 関数はクエリと同じパラメーターによる順序をとりますが、行 11 と 12 は同じ値を持つため、番号が間違っています。
ここでの正しい修正は、order by 句で追加のタイブレーカー列を指定することだとわかっていますが、row_number() 関数が同じデータに対して異なる結果を返す理由/方法についてもっと知りたいですか?
どこかで違いがあれば、これは Azure で実行されます。
sql-server - ORDER BY CASE 使用時の Row_Number() CTE パフォーマンス
ページングと順序付けを行いたいテーブルがあり、次のようなクエリを取得して作業を行うことができました (実際のクエリは、結合などにはるかに関与しています)。
ORDER BY Date desc
問題は、CASE ステートメントを使用すると、通常の句と比較してパフォーマンスが大幅に低下することです (少なくとも 10 倍の速度低下) 。クエリ プランを見ると、@sortCol 修飾子と一致しない場合でも、すべての列がまだ並べ替えられているように見えます。
これを「ネイティブ」に近い速度で実行する方法はありますか? 動的 SQL はこの問題の最良の候補ですか? ありがとう!
postgresql - postgresql の Rownum
postgresql で rownum をシミュレートする方法はありますか?
gwt - 行番号列をGWTCellTableに追加する
新しい最初の列をに挿入し、その中に現在の行のCellTable
を表示する必要があります。RowNumber
GWTでこれを行うための最良の方法は何ですか?
tsql - EF4 SPROC 複合型マッピング - ROW_NUMBER() の問題
私は EF4/ストアド プロシージャ/複合型をしばらく扱ってきましたが、この問題はこれまで見たことがありません。
複雑な型のコレクションにマップされた一連のフィールドを返すストアド プロシージャがあります。この追加フィールドを導入するまで、すべて正常に機能していました。
T-SQL から使用ROW_NUMBER
しています (ランキング結果で使用):
私の複合型では、これをnull不可の Int32として設定しており、POCOも使用しているため、これをPOCOの通常int
のものとして持っています。
しかし、クエリを実行しようとすると、次のエラーが発生します。
System.InvalidOperationException: 'RankedLocationSearchResult' の 'SearchRank' プロパティを 'Int64' 値に設定できませんでした。このプロパティは、'Int32' 型の null 以外の値に設定する必要があります。
私はそれを理解していません。このプロパティ/フィールドが Int64 だと言ったことはありません。そして、私のプロパティは'Int32' 型の null 以外の値です。
さて、問題は ROW_NUMBER() にあると確信しています。
そのT-SQLを1 AS [SearchRank]
(ハードコード、テスト用)に変更すると、正常に動作するためです。
ROW_NUMBER()
EF がInt64 を返すと見なすのとほぼ同じです。
なんで?これを 32 ビット整数か何かとしてキャストする必要がありますか?
誰もこの問題を抱えていましたか?
mysql - SQLループとプロパティの設定
SQLでは、ページ番号順にリストをクエリしたいと思います
次に、クエリ内のインデックスに基づいてpageNumbersを設定します(0ではなく1から開始します)。
これが、必要に応じた機能の擬似コードです。ここで、listは上記のSelectQueryの戻り値です。
たとえば、pageNumbersがあるかもしれません 5, 17, 23, 24, 18, 7
ORDER BYpageNumberASCはこれをにソートします5, 7, 17, 18, 23, 24
次に、pageNumbersを変更して1, 2, 3, 4, 5, 6
編集:
@fortheworld MySQL
@cyberkiwi UPDATE
不明でごめんなさい。私の質問を明確にするためにもっと学ぶ必要があると思います:)すべてのあなたの助けに感謝します
sql-server-2005 - ROW_NUMBER() SQL 2005 クエリが Null を返す
ROW_NUMBER()
Null が原因で、SQL Server 2005 で使用するテーブルの 2 つの異なる期間のデータを比較する際に問題が発生します。
どなたかお力添えを頂ければ幸いです。
クエリは次のとおりです。
sql - 現在の行のフィールドを使用して、前の行に増加を適用します
次のように設定された一時テーブルがあります。
ただし、現在の行のレートを取得し、前の合計を掛けてから、現在の合計に追加する必要があります...新しい合計を計算します!
したがって、3276 の 1% は 32.76 です。
3276 + 32.76 = 3308.76。
3308 の 1% は 33.08 です。
3308.76 + 33.08 = 3341.85。
等々。
私はそのようにCTEを作成しようとしました..
...しかし、それは機能していません:(
誰でも助けることができますか?
SQL Server 2005 を使用しています。
前もって感謝します!
sql-server-2005 - SQL クエリ: 直接番号 1000 の行のデータを取得するにはどうすればよいですか?
約30000行を含むSQLテーブルがありPersons
、行番号1000のデータを取得するSQLクエリを作成したい場合...次のクエリを作成することで、非専門的な方法で取得しました
しかし、それはそれを行うことができるより最適化されたクエリだと思います...完璧なクエリにつながるものはありますか?
注:テーブルには「ID」と呼ばれるPK列が含まれていますが、連続していません