問題タブ [pivot]
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.
pivot - 動的にピボットする方法
2 つのテーブルがあります。リード、テリトリー、リファラー。
リードには列があります:
p>リファラーには次のものがあります。
p>地域には次のものがあります。
p>リードは常にテリトリーに関連し、リードは必要に応じてリファラーに関連付けることができます。
見込み客と紹介者のレコードは定期的に挿入されます (紹介者の頻度は低くなります)。次のような GridView でレポートを出力したいと考えています。
問題は、テリトリー別にグループ化し、テリトリーごとに見込み客をカウントしたいということです....これで問題ありません:-
しかし今、リファラーごとにカウントを分解したいと思います。
PIVOT で部分的にそれを行うことができることは理解していますが、リファラーをコードで明示的に記述する必要があることは理解しています。リファラーの行数に基づいて追加の列を追加する何らかの動的ピボットを実行する方法はありますか?
SP 内で動的 SQL を使用する必要がありますか?
sql - 動的ピボットの問題 + SQL Server 2005
私は問題があります。実際、私たちのアプリケーションでは、以前は顧客が 1 か月あたり 3 回の分割払いを支払うことが許可されていましたが、現在は任意の回数を支払うことができます。だから私は以前のクエリを持っています
出力はこれです
しかし、私が言うように、分割払いは現在変更可能です (たとえば、1 か月で 4 回、翌月で 5 回、3 回、または 6 回になる可能性があります)。
前もって感謝します
plsql - Oracle 10g PL/SQL のコンテンツに基づいて行を列にピボットする
user_answers
データベースに、一連の質問に対するユーザーの回答を行で保存するテーブルがあります。user_id
、question_id
、answer_id
およびtext_entry
。質問テキストと回答テキスト (存在する場合) はルックアップ テーブルに格納されます。問題には、単一回答問題、複数回答問題、文字入力問題の 3 種類があります。そのため、1 人のユーザーがuser_answers
テーブルに次のようなエントリを持つ可能性があります。
questions_text
テーブルに次のものがあるとしましょう。
answers_text
テーブルには次のものがあります。
次のように、user_id ごとに 1 行で回答を示す csv にデータを抽出したいと考えています。
SQLPlus 経由で CSV ファイルを生成する方法は知っていますが (自分では制御できない理由で SQLPlus 経由でのみ DB にアクセスできます...)、PL/SQL ステートメントを生成する方法がわかりません。
PL/SQLでは、次のようにして性別の質問のピボットを生成できることを知っています
(私は SQL の専門家ではないので、これはインターネットからコピーされたものです!)
このコードは (少なくとも私のテストでわかっている限りでは) 単一回答の質問には適していますが、複数回答またはテキスト入力タイプの質問では機能しません。
case
次のように、PL/SQL でステートメントを使用することについてオンラインでいくつか見ました。
...しかし、回答を列に入れる方法がわかりません。そして、関連する可能性のあるSOの質問はすべて、SQLサーバー固有のものです。
単一の PL/SQL ステートメントから目的の出力を生成する方法はありますか? これを実行する必要がある可能性のあるデータベースが多数あるため、テーブル内のデータに依存しない方法で作成することをお勧めします。
asp-classic - ADOレコードセットのフィールド名を取得する(クラシックASP)
誰かが助けることができるかどうか疑問に思います:
簡単に言うと、私はMSSQL2005を使用してピボットテーブルを作成しています。調査されるデータは日付範囲によって制限されます(最も近い月曜日から選択された日付までの1週間のすべてのデータ)
ストアドプロシージャを実行して日付を渡すと、正しいテーブルが返されます。例:
時間 | 09年1月1日 | 09年1月2日 | 09年1月3日 | ..。 |
---|---|---|---|---|
09:00 | 0 | 9 | 25 | ..。 |
09:30 | 8 | 27 | 65 | ..。 |
10:00 | 20 | 44 | 112 | ..。 |
私が抱えている唯一の問題は、SPに渡された日付(目的の表示日)とSP内のロジック(左側の列をその日付に最も近い月曜日にする)の両方に基づいて列ヘッダーが変化することです。指定)。
これは、結果をユーザーに表示するときに、(現在)従来のASPで日付チェックロジックを複製する必要があることを意味します[簡単ですが、保守性は失敗します]
私が本当に必要としているのは、レコードセット自体から列名を取得する方法です。
誰かが私を正しい方向に向けてくれませんか?
私はグーグルで検索しましたが、得られるすべての結果はテーブルスキーマの読み取りに関連しているようです。この場合、テーブルはメモリ内でオンザフライで生成されているため、役に立ちません。
あなたが提供できるどんな助けにも前もって感謝します
sql - SQL の質問: 複数の結果を単一の行にピボットするにはどうすればよいですか?
データベース名に「train delay, with columns」というテーブルがあります
そのため、列車には遅延理由ごとに複数の遅延時間がある場合があります。次に例を示します。
次のデザインの Crystal レポートを作成したいと考えています。
しかし、この結果を得るクエリがわかりません。
私はこれを試しました:
しかし、出力は次のようになります。
そして、私はそれを望んでいません。私はこのようなものが欲しい:
sql - SQL ピボット テーブル
次のデータを含む SQL ビューがあります。
私はこのような結果が欲しい:
Pivot の例を調べてみましたが、それらはすべて SUM またはその他の集計関数のいずれかです。私もやっていないので、それがうまくいくかどうかはわかりません。
sql - SQLServer2008でのPIVOTの使用
SQLServer2008テーブルまたは[table]タイプの変数のいずれかにデータがあるとします。
次のような結果セットとしてデータを取得したいと思います。
(とにかく、この投稿によると)PIVOT演算子が必要なのではないかと思いますが、特にテーブル内のquestion_id行の数が変化する可能性がある場合は、開始方法がわかりません。上記の例では5ですが、別のクエリでは、テーブルに7つの異なる質問が入力される場合があります。
sql - クレイジーな SQL の質問: ピボットを使用してある種のクロス適用を行うにはどうすればよいですか?
顧客は、フィールドに大量のレコードがあるデータにショートカットを持っています。それらを解析するとき、「識別子」を 7 日ずつ増やして、数量ごとに 1 つのレコードを作成する必要があります (数字は日付を表しているためです。
例: 4 週間販売されている単一の製品で、4 つのレコードが必要です。毎週 1 つの製品。
[Event Number]
[Classification]
[Weeks Running]
[Some Data]
2009 11 29 00
1
1
runs one week
2009 12 06 00
2
1
runs one week
2009 12 13 00
1
4
runs four weeks
2009 12 20 00
2
4
runs four weeks
どういうわけか、このデータをビュー(sql select)で次のように変換する必要があります(すべて同じテーブル内にあり、パーツを表示するために空白が含まれています:
[Event Number + Classification]
[Some Data]
2009 11 29 01
runs for one week 1週間で1レコード。
2009 12 06 02
runs for one week
2009 12 13 01
runs for four weeks日付を 7 ずつ
2009 12 20 01
runs for four weeks
2009 12 27 01
runs for four weeks
2009 01 03 01
runs for four weeks
2009 12 20 02
runs for four weeks増やして 4 回繰り返す 日付を 7 ずつ増やして 4 回繰り返す
2009 12 27 02
runs for four weeks
2009 01 03 02
runs for four weeks
2009 01 10 02
runs for four weeks
私の考えは、ある種のピボットクロス適用SQLコードを持っていることですか?
sql-server - データに何も存在しない場合に null 値を返す SQL Server 動的ピボット
次のような3 つのテーブル ( tblPreference
、tblCustomer
、tblCustomerPreference
) があります。
このデータのピボットを作成しているので、次のストアド プロシージャを使用してすべてが 1 つの行になり、常にすべての設定が引き戻され、顧客固有の値が見つかった場合はそれが返され、それ以外の場合はデフォルト値が返されます。
私が直面している問題は、CustomerID 1 または 2 を照会すると、期待どおりにすべての値が入力されて、すべてが期待どおりに返されることです。しかし、CustomerID 3 を照会するとNULL
、他の顧客用に入力された PreferenceID に対して が返されます。式なしでクエリを実行するとPIVOT
、期待どおりに入力されたすべての設定が返されます。データが忍び寄るのをピボットしたときだけNULL
です。簡単なことを見逃していることを願っていますが、エラーは表示されません。
tsql - SQLは行を列に変換します
私はこれが数回前に尋ねられたことを知っています、しかし私は私の例に合うどんな解決策も見つけることができません。
現在、特定のページを使用するためのユーザー権限の表があります。テーブルは次のようになります。
このデータからテーブルを生成するにはどうすればよいですか。すべてのページ名が列として表にされ、テーブルの各行はユーザーID用であり、列の値は、元のテーブルに次のエントリがあるかどうかに基づいて0または1を表示します。その特定のページ、例えば:
あなたの助けは大歓迎です!