0

これが私の状況です - Web からダウンロードした大きなテキスト テーブルがあり、各行に固定幅の一連の 5 つの変数があります - 「スペース」で区切られています。

私は phpMYADMIN を使用してデータをアップロードしています (過去にカンマ区切りのアップロードで成功しました) が、この特定のテーブルは非常に「美しく」「使いやすい」ので、アップロードしてアップロードについて学びたいと思います。固定幅のテーブルを db に。

ウェブ上で、固定幅のテーブルを一連の単一行としてアップロードし、後でそれを処理するという提案を見つけました。それは成功しました。

これで、1 列と 90,000 行、各行の長さが約 450 文字の「monolith」という名前のテーブルができました。

また、同じページから、「モノリス」テーブルで単純な MySQL コードを使用し、各行を解析し、それらの変数をターゲット テーブルに配置することを提案しました。私はそのコードをいじって、最終的にこれに決めました:

INSERT INTO icd10new
    (icd10order, icd10code, icd10header, icd10short, icd10long)
SELECT SUBSTRING(1,5) AS 'icd10order',
    SUBSTRING(7,7) AS 'icd10code',
    SUBSTRING(15,1) AS 'icd10header',
    SUBSTRING(17, 60) AS 'icd10short',
    SUBSTRING(78, 255) AS 'icd10long'
FROM monolith;

コードは「完了」しますが、テーブルが完全に空 (合計行数が正しい) であるか、3 番目の変数が「15」で満たされています。

一重引用符の有無にかかわらずコードを試し、すべての部分文字列を VALUE() に入れましたが、何も機能していないようです。

誰かが私の間違いを指摘してくれるほど親切でしょうか?

4

1 に答える 1