問題タブ [over-clause]

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.

0 投票する
3 に答える
2804 参照

sql - T-Sqlの「Over」句は正確に何をしますか?

私は ASP.NET MVC を台無しにし始めており、基本的なページングを実行したいという問題に遭遇しました。そこで、この単純な Linq ステートメントを (Northwind データベースを使用して) 使用して、特定のページの 10 個のアイテムを取得しました。

それはうまく機能しますが、デバッグしたときに、実際の SQL が Linq to Sql によって生成されたものであることに興味がありました。これは出力でした:

現在、私は SQL の専門家ではありません。そのため、「OVER」句を見たことがありません。私は高レベルからそれが正確に何をし、いつ使用されるのか興味がありますか?

0 投票する
2 に答える
5589 参照

c# - linq ツリー式を使用して動的列を持つピボット テーブルを作成する方法

私はasp.net C#Webアプリケーションを書いています。' '、' '、' ' の3table1つの列を持つ' ' という名前のメモリ内データテーブルがあります。そのテーブルをピボットして、最初の列 ' ' を固定列とし、動的な番号と列名 ' '、' '、...、' ' に従って新しいテーブル (' ' と仮定) を取得したい' ' に存在する製品の総数。最初の列 ' ' には国名を含める必要があります。動的に生成された列 ' '、' '、...、' 'には、指定された国で特定の製品ごとに販売された が含まれている必要がありますcountryproductIdproductQuantitytable2countryproduct_1product_2product_ntable1countryproduct_1product_2product_nproductQuantity

私は Linq クエリ式を使用してコードを記述しています。問題は、製品の名前も値もハードコーディングできないことです。データテーブルに存在する製品の数を予測できません。今のところ、次の式を使用して結果をテストしています。

table1「 」がどのように見えるか、「 」がどのように見えるtable2必要があるかについての例を示しています。

table1 と table2 の 2 つのテーブルのサンプル画像を表示

linqツリー式または別のlinqメソッドを使用して動的列を持つピボットテーブルを作成するための解決策を見つけるのを手伝ってくれませんか? どんな助けでも大歓迎です。

0 投票する
2 に答える
2945 参照

sql-server - SQL Server2008R2のウィンドウ関数に関する問題

次のSQLスクリプトで実行エラーが発生します。

エラーメッセージ

'order'の近くの構文が正しくありません

誰かが私の構文の何が問題になっているのか教えてもらえますか?

0 投票する
1 に答える
4571 参照

sql - SQL - 2 回の間の OVER 句の範囲

over 関数を使用して、すべての行の現在の行の開始日と終了日の間に開始するイベントの数をカウントしようとしています。つまり、同時カウンターです。最終的には、1 日または 1 時間あたりの最大同時イベント数などを探します。

残念ながら、これはうまくいかないようです。単純に自己結合を使用できることはわかっていますが、over 句を使用した別の方法があるのではないかと考えました。

どんな助けでも大歓迎です。

注意: エラーメッセージ

メッセージ 102、レベル 15、状態 1、行 7 'StartDate' 付近の構文が正しくありません。

0 投票する
1 に答える
915 参照

ms-access - Access 2007、OVER 句の回避策 - 演算子の欠落エラー

私のクエリは、「WeightFactor」という名前の追加フィールドをテーブルの最後に追加するように設計されています。私のSQLコードは以下です。実行しようとすると、「missing operator エラー」が表示されます。前の質問で、OVER() が構文的に正しいステートメントであることがわかります。「WeightFactor」フィールドは、rowprice/totalprice を取得しているため、100% の小さなパーセンテージである必要があります。OVER 句を削除すると、エラーはなくなりますが、結果は各行に 100% の正しいパーセンテージではなく、各行に 100% を表示するだけです。

Access では OVER がサポートされていないと警告されたので、それが本当かどうか疑問に思っていました。

0 投票する
1 に答える
664 参照

sql - グループ化されたシリーズの各要素に増分番号を追加するにはどうすればよいですか?

Groupというテーブルとというテーブルがあるという問題に直面していますEntryGroupテーブルには主キーがありますIdEntryテーブルには主キー、テーブルの呼び出されIdたへの外部キーがあります。表にはもう 1 つの列があります。これは整数であり、一番上にゼロが表示されるソートの重みを教えてくれるだけです。GroupIdGroupIdEntryWeightWeight

基本的に何が起こったかというとWeight、データベースの設計時に誰かがこのフィールドを null 可能にしました。ここで、テーブルに追加する予定の制約Weightに合わせて調整する必要があります。これにより、基本的に同じグループにある場合に、2 つのエントリが同じ並べ替えの重みを持つことを防ぎます。UNIQUEUNQIUE(GroupId, Weight)EntryEntry

Weight既存のすべてのデータを調べて、グループごとに各エントリの列に 0 から N までの番号を付けることができるクエリはどれですか。N はEntry内のエントリの数です。Groupの に基づいて重みを設定し、特定のIdのの最小値が最小値になるEntryようにします。IdEntryGroupWeight

Groupテーブルを通過し、すべてのEntryエントリを結合してから、それらを反復処理してシーケンスを割り当てる1 つの大きな古いクエリが必要です。しかし、どこから始めればよいかわかりません。

0 投票する
2 に答える
7683 参照

sql - TSQL-2008 SUM(X) OVER (PARTITION ... ORDER BY CLAUSE)

CTE の結果として得たものを実際に取得し、データ グループの累積値を計算する必要があります。

データセットは次のとおりです。

私が欲しいのは、各 FT、グループ、部門の累積金額を保持する追加の列です。

したがって、基本的には、次のようになりたいと思います。

SQL 2012 を使用していた場合は、次のようなものを使用します。

ただし、私は 2008 年にこの方法を使用できず、データに対してこれを複製する方法に困惑しています。

誰でも助けてください。