これが私の状況です - 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() に入れましたが、何も機能していないようです。
誰かが私の間違いを指摘してくれるほど親切でしょうか?