0

MySQLの残りを取得するためにクエリを実行する方法を知りたいID_COUNT / 8です。

テーブルの例を次に示します。

 ID (INT)  | PRODUCT ID | TIME
  1        |     14     | 09:34:00
  5        |     26     | 09:47:00
  5        |     01     | 09:58:00
  1        |     02     | 10:10:00
  2        |     63     | 10:36:00
  4        |     59     | 10:47:00
  3        |     18     | 11:00:00
  1        |     27     | 11:15:00
  5        |     36     | 11:38:00
  1        |     44     | 09:34:00
  5        |     55     | 09:47:00
  5        |     14     | 09:58:00
  1        |     24     | 10:10:00
  2        |     54     | 10:36:00
  4        |     44     | 10:47:00
  3        |     54     | 11:00:00
  1        |     64     | 11:15:00
  5        |     14     | 11:38:00

ここでやりたいことは、新しい行が挿入されるたびに、COUNTその値を取得したいID(たとえば、 のID=5場合は 6)、その数を 8 (6/8) で割って取得することです。その分割の残り。

ちなみに私はPHPを使っていますが、MySQLだけではどうしようもありません。

ご質問はお気軽にどうぞ。ミゲル。

4

3 に答える 3

0

MOD機能を使う

クエリの例

SELECT COUNT(1) MOD 8 AS result
FROM `table`
WHERE id=5

一般的な例のクエリ

SELECT id, COUNT(1) MOD 8 AS result
FROM `table`
GROUP BY id
于 2013-07-11T10:41:37.347 に答える
0
SELECT MOD(cnt, 8) FROM (SELECT COUNT(ID) cnt FROM mytable GROUP BY ID)
于 2013-07-11T10:42:33.310 に答える
0

mod()次の関数を使用できます。

select mod(count(*), 8)
from t
where id = @Last_Id

id自動インクリメントされないため、使用できませんlast_inserted_id()

于 2013-07-11T10:43:27.340 に答える