0

私は次の問題でそれを失っています:

参加者とポイントを含むテーブルがあります。各参加者は最大 11 点のエントリを持つことができ、上位 6 点の合計のみが必要です。

この例では、3 つのうちの上位 2 つが必要であるとします。

+----+---------------+--------+
| id | participantid | points |
+----+---------------+--------+
|  1 |   1           |  11    |
+----+---------------+--------+
|  2 |   3           |   1    |
+----+---------------+--------+
|  3 |   3           |   4    |
+----+---------------+--------+
|  4 |   2           |   3    |
+----+---------------+--------+
|  5 |   1           |   5    |
+----+---------------+--------+
|  6 |   2           |  10    |
+----+---------------+--------+
|  7 |   2           |   9    |
+----+---------------+--------+
|  8 |   1           |   3    |
+----+---------------+--------+
|  9 |   3           |   4    |
+----+---------------+--------+

結果として、私は次のようなものが欲しい

+---------------+--------+
| participantid | points |
+---------------+--------+
|   2           |  19    |
+---------------+--------+
|   1           |  16    |
+---------------+--------+
|   3           |   8    |
+---------------+--------+

(結果のポイントによってDESCを注文する必要があります)

これはmysqlでまったく可能ですか?1つのクエリで?

ああ、結果の参加者 ID は、別の「partcipant」テーブルから実名に解決する必要があります。

+----+------+
| id | name |
+----+------+
| 1  | what |
+----+------+
| 2  | ev   |
+----+------+
| 3  | er   |
+----+------+

しかし、それはある時点で結合することで実行できるはずです...私は知っています...

4

1 に答える 1