やりたいこと
集計ソフトをVisualBasicで作成しています。データベースにSQLite(3.24.0)を使用しています。
以下にテーブル構造を示します。
スコアデータテーブルの前半点数と後半点数を合計し、グループごとにその合計した点数が高い順に4人選び、その4人の点数を合計してグループの点数としたいのですが、どのようにSQLを書いたらいいのかわかりません。
教えていただけるとありがたいです。
テーブル構造
グループマスタ
列名 | 型 | 備考 |
---|---|---|
ID | Integer | 主キー,AutoIncrement |
グループ名 | Text |
プレイヤーマスタ
列名 | 型 | 備考 |
---|---|---|
ID | Integer | 主キー,AutoIncrement |
氏名 | Text | |
生年月日 | Text | |
グループID | Integer | 外部キー(グループマスタのID列を参照) |
スコアデータ
列名 | 型 | 備考 |
---|---|---|
プレイヤーID | Integer | 主キー,外部キー(プレイヤーマスタのID列を参照),AutoIncrement |
前半点数 | Integer | デフォルト値(0) |
後半点数 | Integer | デフォルト値(0) |
やったこと
SQL
1SELECT プレイヤーID, (前半点数+後半点数) AS 合計点数 2FROM スコアデータ
クエリはどこまで自分で書けていますか? どこでつまずいていて、何がわかれば解決するのでしょう?
SQLite のクエリの問題で VB やVB.NET は関係ないのでは? であれば、それらのタグは外していただくようお願いします。
点数を合計するところまでできていて、グループの上位4人の点数を合計するところでつまずいています。
クエリだけで解決できるかわからなかったのでそれらのタグもつけました。すいません。
そのクエリを質問欄に追記できませんか?
> クエリだけで解決できるかわからなかったのでそれらのタグもつけました。
VB.NET アプリのコードで処理するための制約(たとえば、こういう風に表示したいからこういう形でデータを取得しなければならないというような制約)があるのでしょうか?
特にそのような制約はないです、
回答1件
あなたの回答
tips
プレビュー