我想將數據導出到csv文件中,但是我的前導零被切碎了......我無法修改數據,因此LPAD不是一個選項。此外,ID不是一個設定的長度......它可能是6個字符長,或多達11個。它也可能有字母(在這種情況下,csv將這些值顯示爲字符串)。無論如何,具有前導零的字段具有。在數據庫中前導零,並存儲爲varchar我需要拉這些值,並在CSV與零顯示出來:帶有前導零的mysql outfile列
SELECT
'ID',
'Par 1',
'Par 2'
UNION
(SELECT
result.id as 'ID',
COALESCE(sum(if(result.parameter = '10001', result.result, NULL)),'-') as 'Par 1',
COALESCE(sum(if(result.parameter = '10002', result.result, NULL)),'-') as 'Par 2'
INTO OUTFILE '/tmp/file.csv' FIELDS TERMINATED BY ',' ENCLOSED BY '\"'
FROM (
SELECT
event.id,
resultset.parameter_cd,
resultset.result
FROM event
Inner Join resultset ON resultset.id = event.id
) as result
group by result.id
order by
result.id ASC)
在這種情況下,「ID」
可能有前導零...的結果集從mysql顯示它們,但是在導出的csv中它們被完全去掉了????
你可以在CSV條目周圍加單引號嗎? –
我試過'CONCAT(「'」,event.id,''「)作爲ID'這把單引號,但他們出現在csv這是客戶端不可接受的 –
您的問題是更可能與試圖將數字看作數字的東西的CSV解釋器。這就是爲什麼單引號輸入。這尤其表現在郵政編碼等事情。爲什麼客戶反對單引號? –