MySQL AUTO_INCREMENTの開始番号を変更するにはどうすればよいですか?
MySQL AUTO_INCREMENT値は1から始まりますが、次の2つの方法で変更できます-
ALTER TABLEクエリを使用して、AUTO_INCREMENTの開始値を次のように変更できます-
ALTER TABLE table_name AUTO_INCREMENT = value;
mysql> Create Table EMP(id int NOT NULL PRIMARY KEY AUTO_INCREMENT, NAME VARCHAR(10)); Query OK, 0 rows affected (0.07 sec) mysql> Insert Into EMP(Name) Values('Aryan'); Query OK, 1 row affected (0.02 sec) mysql> Insert Into EMP(Name) Values('Yash'); Query OK, 1 row affected (0.04 sec) mysql> Select * from EMP; +----+-------+ | id | NAME | +----+-------+ | 1 | Aryan | | 2 | Yash | +----+-------+ 2 rows in set (0.00 sec)
ここで、後でシーケンス番号を変更する場合は、ALTERTABLEクエリを使用してAUTO_INCREMENTの値を次のように変更する必要があります-
mysql> Alter table emp auto_increment = 10; Query OK, 2 rows affected (0.25 sec) Records: 2 Duplicates: 0 Warnings: 0 mysql> Insert Into EMP(Name) Values('Daksh'); Query OK, 1 row affected (0.03 sec) mysql> Insert Into EMP(Name) Values('Shayra'); Query OK, 1 row affected (0.06 sec) mysql> Select * from EMP; +----+--------+ | id | NAME | +----+--------+ | 1 | Aryan | | 2 | Yash | | 10 | Daksh | | 11 | Shayra | +----+--------+ 4 rows in set (0.00 sec)
上記のクエリにより、AUTO_INCREMENTの値が10に変更されたため、新しい値を挿入すると、10以降のシーケンス番号が取得されます。
テーブルの作成中にAUTO_INCREMENT値を変更することもできます。これは、CREATETABLEクエリでAUTO_INCREMENTの値を次のように指定することで実行できます-
CREATE TABLE (Column1 INT PRIMARY KEY NOT NULL AUTO_INCREMENT, Column2 data type) AUTO_INCREMENT = value;
mysql> Create Table EMP1(id INT NOT NULL PRIMARY KEY AUTO_INCREMENT, NAME VARCHAR(10)) AUTO_INCREMENT = 100; Query OK, 0 rows affected (0.11 sec)
上記のクエリは、テーブルの作成時にAUTO_INCREMENTの値を100に指定しました。ここで値を挿入すると、シーケンス番号はデフォルトの値1ではなく100から始まります-
mysql> Insert into emp1(name) values('Sohan'); Query OK, 1 row affected (0.04 sec) mysql> Insert into emp1(name) values('Harshit'); Query OK, 1 row affected (0.05 sec) mysql> Select * from emp1; +-----+---------+ | id | NAME | +-----+---------+ | 100 | Sohan | | 101 | Harshit | +-----+---------+ 2 rows in set (0.00 sec)
-
MySQLで日数を数えるにはどうすればよいですか?
まず、1つの列を日時として、別の列に日が格納されているテーブルを作成しましょう。 mysql> create table DemoTable ( ShippingDate datetime, CountOfDate int ); Query OK, 0 rows affected (0.52 sec) 以下は、挿入コマンドを使用してテーブルにいくつかのレコードを挿入するためのクエリです。 mysql> insert into DemoTable values('2018-01-31',6); Query OK,
-
MySQLでsoundex()をクエリする方法は?
SOUNDEX()はsoundex文字列を返します。ほぼ同じように聞こえる2つのストリングは、同じsoundexストリングを持つ必要があります MySQLでsoundex()をクエリするには、次の構文を使用できます- select *from yourTableName where soundex(yourValue)=soundex(yourColumnName); まずテーブルを作成しましょう- mysql> create table DemoTable ( Id int NOT NULL AUTO_INCREMENT PRIM