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

そのテキストファイルをMySQLテーブルにインポートするときに、テキストファイルに書き込まれるのではなく、列の変更された値をアップロードするにはどうすればよいですか?


テキストファイルに書き込まれた値ではなく、変更された値をアップロードする場合は、SETコマンドとともにユーザー変数を使用する必要があるとします。次の例の助けを借りて理解することができます-

「A.txt」に次のデータがあるとします-

105,Chum,USA,11000
106,Danny,AUS,12000

ただし、テキストファイルの給与の値を変更せずに、インポート時に500を追加した後、給与の値をアップロードしたい場合は、次のクエリを使用してアップロードできます。 SETオプションと一緒にユーザー変数を使用する-

mysql> LOAD DATA LOCAL INFILE 'd:\A.txt' INTO table employee11_tbl FIELDS TERMINATED BY ',' (id,name,country,@salary) SET salary = @salary + 500;
Query OK, 2 rows affected (0.21 sec)
Records: 2 Deleted: 0 Skipped: 0 Warnings: 0

mysql> Select * from employee11_tbl;
+------+----------------+----------+--------+
| Id   | Name           | Country  | Salary |
+------+----------------+----------+--------+
| 105  | Chum           | USA      |  11500 |
| 106  | Danny          | AUS      |  12500 |
+------+----------------+----------+--------+
2 rows in set (0.00 sec)

上記の結果セットから、MySQLが給与の値に500を追加した後、データをテーブルにアップロードしたことは明らかです。


  1. あるMySQLテーブルから別のテーブルにINTOを挿入し、1つの列の値を設定するにはどうすればよいですか?

    まず、テーブルを作成しましょう。以下はクエリです- mysql> create table insertOneToAnotherTable    -> (    -> Value int    -> ); Query OK, 0 rows affected (0.60 sec) 以下は、挿入コマンド-を使用してテーブルにいくつかのレコードを挿入するためのクエリです。 mysql> insert into insertOneToAnotherTable values(100); Query OK, 1 r

  2. MySQLブール列を作成し、同じ列を変更しながら値1を割り当てるにはどうすればよいですか?

    変更中に値1を割り当てるには、MySQLDEFAULTを使用します。 INSERTコマンドの使用中に同じ列に何も挿入されていない場合、これ自体が1になります。 まずテーブルを作成しましょう- mysql> create table DemoTable (    isAdult int ); Query OK, 0 rows affected (1.39 sec) 以下は、すでに作成されている列に値1のデフォルトを割り当てる方法です- mysql> alter table DemoTable CHANGE isAdult isAdult BOOLEAN DEF