MySQL
 Computer >> コンピューター >  >> プログラミング >> MySQL

MySQLの列をintからdoubleに変更しますか?


MySQLの列をintからdoubleに変更するには、ALTERTABLEコマンドを使用する必要があります。

構文は次のとおりです。

ALTER TABLE yourTableName modify column yourColumnName DOUBLE NOT NULL;

NULL値が必要な場合は、上記の構文からNOTNULLを削除してください。構文は次のとおりです。

ALTER TABLE yourTableName modify column yourColumnName DOUBLE;

上記の構文を理解するために、テーブルを作成しましょう。テーブルを作成するためのクエリは次のとおりです。

mysql> create table IntToDoubleDemo
   -> (
   -> Id int NOT NULL AUTO_INCREMENT,
   -> Name varchar(10),
   -> CylinderVolume int,
   -> PRIMARY KEY(Id)
   -> );
Query OK, 0 rows affected (0.63 sec)

DESCコマンドを使用してテーブルの説明を確認してください。構文は次のとおりです。

DESC yourTableName;

上記のクエリをテーブルに適用して、テーブルの説明を取得します。

mysql> desc IntToDoubleDemo;

出力は次のとおりです。

+----------------+-------------+------+-----+---------+----------------+
| Field          | Type        | Null | Key | Default | Extra          |
+----------------+-------------+------+-----+---------+----------------+
| Id             | int(11)     | NO   | PRI | NULL    | auto_increment |
| Name           | varchar(10) | YES  |     | NULL    |                |
| CylinderVolume | int(11)     | YES  |     | NULL    |                |
+----------------+-------------+------+-----+---------+----------------+
3 rows in set (0.18 sec)

上記の出力例を見ると、フィールド「CylinderVolume」はintの一種です。これで、intからdoubleに変換できます。

MySQLの列をintからdoubleに変更します。クエリは次のとおりです。

mysql> alter table IntToDoubleDemo MODIFY COLUMN CylinderVolume double NOT NULL;
Query OK, 0 rows affected (2.79 sec)
Records: 0 Duplicates: 0 Warnings: 0

もう一度、テーブルの説明を確認してください。クエリは次のとおりです。

mysql> desc IntToDoubleDemo\G

出力は次のとおりです。

*************************** 1. row ***************************
Field: Id
Type: int(11)
Null: NO
Key: PRI
Default: NULL
Extra: auto_increment
*************************** 2. row ***************************
Field: Name
Type: varchar(10)
Null: YES
Key:
Default: NULL
Extra:
*************************** 3. row ***************************
Field: CylinderVolume
Type: double
Null: NO
Key:
Default: NULL
Extra:
3 rows in set (0.00 sec)

  1. カンマ区切りのMySQL列から検索しますか?

    カンマ区切りの列から検索するには、FIND_IN_SET()メソッドを使用します。まずテーブルを作成しましょう- mysql> create table DemoTable    -> (    -> Value varchar(20)    -> ); Query OK, 0 rows affected (0.47 sec) 挿入コマンド-を使用して、テーブルにいくつかのレコードを挿入します mysql> insert into DemoTable values('41,14,94')

  2. MySQLで列名として「from」を作成するにはどうすればよいですか?

    「from」は予約語であるため、バッククォート記号を使用して列名と見なします。ここで、予約語をバックティックで囲んだテーブルを作成します- mysql> create table DemoTable1810      (      `from` varchar(20)      ); Query OK, 0 rows affected (0.00 sec) 挿入コマンド-を使用して、テーブルにいくつかのレコードを挿入します mysql> insert into DemoTable1810 v