0

私のアプリケーションは私が書いているビデオ ゲームであり、マップ上でクリーチャーを動かすスクリプトを書こうとしています。そのため、一意の spawn_id、posx、posy の組み合わせを返そうとしています (一意の組み合わせごとに 1 行のみ) 返される id が私のキー フィールドであることは問題ではありません。

SELECT id,spawn_id,posx,posy,land,movelimit,next_turn FROM `game_moblist` WHERE 1 GROUP BY spawn_id,posx,posy

データが与えられたので

id spawn_id posx posy
1  1        55   55
2  1        55   55
3  1        110  55

クエリは行 1 と 3 (または 2 と 3 は実際には関係ありません) を返す必要がありますが、1、2、および 3 は返しません。

4

1 に答える 1

1

あなたはほとんどそこにいます。

SELECT
    spawn_id, posx, posy, MIN(id) AS Id
FROM
    game_moblist
GROUP BY
    spawn_id, posx, posy

ID のリストを返すだけで、他のクエリでそれに対して結合することもできます。

SELECT
    MIN(id) AS Id
FROM
    game_moblist
GROUP BY
    spawn_id, posx, posy
于 2012-07-27T22:01:55.893 に答える