0

私はこのようなテーブルを持っています

|ID|TIME-|
|01|01:15|
|01|01:30|
|02|01:35|
|02|01:36|
|02|05:30|
|02|10:30|
|01|12:30|

私が欲しいのは、それらが同じ時間マーク内にある場合にのみ個別のIDを選択することです。したがって、私が探している結果は次のとおりです。

|ID|TIME|
|01|1:15|
|02|1:35|
|02|5:30|
|02|10:30|
|01|12:30|

TIMEはmysqlの日付形式です。

このクエリを作成するにはどうすればよいですか?

ありがとう!

4

2 に答える 2

0

あなたはこれを行うことができます。これにより、ID ごとに 1 つのレコードが得られます。時間は、指定された時間の最初の時間の値を示します。

SELECT ID, TIME

FROM  <yourtable>

GROUP BY ID, HOUR(TIME)

ORDER BY ID, TIME
于 2013-01-24T20:54:08.040 に答える
0

TIME がタイムスタンプまたは日時であると仮定する

SELECT ID, TIME
FROM  yourtable
GROUP BY ID, floor(TIME/3600)

これはmysql固有です

SELECT ID, TIME
FROM  yourtable
GROUP BY ID, TIME DIV 3600
于 2013-01-24T20:55:44.300 に答える