したがって、たとえば、次の内容の「physical_address」フィールドのように、別のフィールドに分割する必要があるアドレス TEXT フィールドがあります。
| physical_address |
+------------------+
| 123 Street Name |
| Suburb |
| City |
+------------------+
次のようになります。
| physical_address_1 | physical_address_2 | physical_address_3 |
+--------------------+--------------------+--------------------+
| 123 Street Name | Suburb | City |
+--------------------+--------------------+--------------------+
上記の形式でアプリにインポートする必要があるため、これは一時的なものです。そのため、select ステートメントが最適なオプションになりますが、それほど単純ではないと思います。
この種の作品は、完全ではありません:
SELECT
physical_address,
SUBSTRING_INDEX(physical_address, CHAR(10), -5) AS a,
SUBSTRING_INDEX(physical_address, CHAR(10), -4) AS b,
SUBSTRING_INDEX(physical_address, CHAR(10), -3) AS c,
SUBSTRING_INDEX(physical_address, CHAR(10), -2) AS d,
SUBSTRING_INDEX(physical_address, CHAR(10), -1) AS e
FROM clients LIMIT 5
5 行の TEXT 値を使用すると、それ以下でも完全に機能し、最初のいくつかのフィールド (行によって異なります) が値を繰り返すことがわかります。この cos の SQL Fiddle をセットアップできません。リターン フィードをクリーンアップしているように見えるため、スキーマの例を次に示します。
CREATE TABLE clients (id int unsigned auto_increment primary key, physical_address text);
INSERT INTO clients (id,physical_address) VALUES (1,"123 Street,\r\n123 Suburb,\r\n123 City");
INSERT INTO clients (id,physical_address) VALUES (2,"456 Street,\r\n456 Suburb,\r\n456 City,\r\n456 Province");
INSERT INTO clients (id,physical_address) VALUES (3,"789 Street,\r\n789 Suburb,\r\n789 City,\r\n789 Province,\r\n789 Country");