データベースの設定方法に問題があると私は完全にはわかっていません。基本的には、クエリで2つの異なるテーブルを使用していますが、トランザクションとチケット価格について説明します。彼らは、(いくつかのサンプルデータでは)次のようになります。クエリ内の2つのテーブルを結合し、そのテーブルから新しいカラムを作成する
TRANSACTIONS
Transation ID | Ticket Quantity | Total Price | Salesperson | Ticket Price ID
5489 250 250 Jim 8765
5465 50 150 Jim 1258
7898 36 45 Ann 4774
Ticket Prices
Ticket Price ID | Quantity | Price | Bundle Name
8765 1 1 1 ticket, $1
4774 12 15 5 tickets, $10
1258 1 3 1 ticket, $3
私は何を目指してることはバンドルタイプによって、各販売員の売上高を分解したレポートです。私は、Webを検索してきた、そしてこのようにそれを得るための最善の方法は、様々なサブクエリを使用しているようで、限りコラムのタイトルを取得するだけでなく働く
Sales Volume/Salesperson
Name | Bundle A | Bundle B | Bundle C | Total
Jim 250 0 50 300
Ann 0 36 0 36
:結果の表には、このようなものでなければなりません適切に表示されますが、実際の数値合計までは機能しません。これは基本的にデータを組み合わせ、各営業担当者に合計の読取り値を与えます(この例では、JimとAnnの両方がBundle Aで250件、Bundle Bで36件など)。私に適切な結果を与えるクエリを書くことができる方法はありますか?それとも少なくともそれに近いものさえ?どのような入力をありがとう。
1がありますあなたの 'TICKET_PRICES'テーブルの中の' ID'ですか?もしそうなら、「チケット価格ID」8765が「バンドルA」であることをどのように知っていますか? 'TICKET_PRICES'テーブルに3つ以上の行があるとどうなりますか?あなたの出力の列を増やしたいですか? –
SQL Serverを使用すると、計算にクロス適用を使用してこれを行うことができ、オンザフライで列を作成できますが、これがoracleで可能かどうかはわかりません。 – Standage
@JustinCave現時点では、私はそれを知る方法がないので、最初にハードコードされた値で基本構造を取得したかっただけです。理想的には、はい。異なるバンドルにあるものと同じ数の列を出力したいと思います。 – Linkmaster94