MySQLの自動インクリメント値の現在のカウントを変更しますか?
ALTERコマンドを使用して、MySQLのauto_incrementの現在のカウントを変更できます。
構文は次のとおりです-
ALTER TABLE yourTableName AUTO_INCREMENT = IntegerValue;
上記の構文を理解するために、テーブルを作成しましょう。テーブルを作成するためのクエリは次のとおりです-
mysql> create table changeCurrentAutoIncrementValue −> ( −> CurrentCount int auto_increment, −> PRIMARY KEY(CurrentCount) −> ); Query OK, 0 rows affected (0.60 sec)
selectステートメントを使用してテーブルにレコードを挿入します。 auto_incrementは、デフォルトで1から始まり、1ずつ増加します。レコードを挿入するためのクエリは次のとおりです-
mysql> insert into changeCurrentAutoIncrementValue values(); Query OK, 1 row affected (0.20 sec) mysql> insert into changeCurrentAutoIncrementValue values(); Query OK, 1 row affected (0.15 sec) mysql> insert into changeCurrentAutoIncrementValue values(); Query OK, 1 row affected (0.11 sec) mysql> insert into changeCurrentAutoIncrementValue values(); Query OK, 1 row affected (0.12 sec) Display all records to check from where the value starts. The query is as follows: mysql> select *from changeCurrentAutoIncrementValue;
出力は次のとおりです。
+--------------+ | CurrentCount | +--------------+ | 1 | | 2 | | 3 | | 4 | +--------------+ 4 rows in set (0.00 sec)
上記のサンプル出力を見ると、auto_incrementは1から始まり、次の数値は前の数値の1を加算して生成されています。
これは、現在のauto_increment値を変更するためのクエリです。クエリは次のとおりです-
mysql> alter table changeCurrentAutoIncrementValue auto_increment = 300; Query OK, 0 rows affected (0.27 sec) Records: 0 Duplicates: 0 Warnings: 0
上記のクエリを見てください。 auto_increment値を変更しました。現在は300から始まります。新しい値は、上記の値の後に、つまり4の後に追加されます。
ここで、テーブルにレコードをもう一度挿入してみましょう。クエリは次のとおりです-
mysql> insert into changeCurrentAutoIncrementValue values(); Query OK, 1 row affected (0.15 sec) mysql> insert into changeCurrentAutoIncrementValue values(); Query OK, 1 row affected (0.17 sec) mysql> insert into changeCurrentAutoIncrementValue values(); Query OK, 1 row affected (0.15 sec)
テーブルのレコードを表示して確認します。クエリは次のとおりです-
mysql> select *from changeCurrentAutoIncrementValue;
以下は出力です-
+--------------+ | CurrentCount | +--------------+ | 1 | | 2 | | 3 | | 4 | | 300 | | 301 | | 302 | +--------------+ 7 rows in set (0.00 sec)
上記のサンプル出力を見てください。auto_increment値を変更した後の値は300から始まります
-
MySQLクエリで日付/時刻の値を秒単位でインクリメントしますか?
これには、intervalコマンドでdate_add()を使用します。まずテーブルを作成しましょう- mysql> create table DemoTable1867 ( ArrivalTime datetime ); Query OK, 0 rows affected (0.00 sec) 挿入コマンド-を使用して、テーブルにいくつかのレコードを挿入します mysql> insert into DemoTable1867 values('2019-1
-
最大累積値をフェッチするMySQLクエリ
このためには、サブクエリとともに集計関数COUNT(*)を使用します。 GROUPBYも使用されます。 テーブルを作成しましょう- mysql> create table demo23 −> ( −> id int not null auto_increment primary key, −> value1 int, −> value2 int −> ); Query OK, 0 rows affected (1.65 sec) 挿入コマンド-を使用して、いくつかのレコードをテーブルに挿入します