這是我的情況 - 我從網上下載了一個大型文本表,它是一系列5個變量,每行固定寬度 - 「空格」分隔。MySQL - 將表1中的數據解析並移動到表2
我使用phpMyAdmin來上傳數據(我已經成功地在過去逗號分隔的上傳),但這個特殊的表是如此「美麗」和「易用」我想上傳並瞭解如何將固定寬度表上傳到數據庫。
在網絡上,我發現了一個建議,將固定寬度表格上傳爲一系列單行,然後再用它做一些事情。 這是成功的。
所以,現在我有一個名爲「monolith」的表,有一列和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;
代碼「完成」,但該表是不是完全空的(正確的號碼總行)或第三個變量是充滿了「15」。
我試過有和沒有單引號的代碼,把所有的子字符串放在一個VALUE()中,似乎沒有任何工作。
會有人好心地指出我的錯誤?
hooray!萬歲!萬歲!它工作得很漂亮!非常感謝!我在看它,想知道它是如何知道要分析哪個變量的,所以現在很清楚。再次,非常感謝! – TimSPQR
我只是想再次感謝你。我已經使用了我在這個線程學到的更多的概念。優秀的評論,再次,謝謝!如果我可以給你第二個綠色複選標記,我會的! – TimSPQR