2012-10-30 68 views
0

我有下面的查詢將其導出爲具有HTML值的列正文的CSV。MySQL將表格導出爲帶有HTML正文列的CSV

問題是,即使我用空格替換逗號,它不會正確顯示(因爲顯示不正確),而且行也不會以換行符終止。

SELECT j.id,j.title,j.featured,REPLCAE(j.body,',',' '),j.created,j.created_by,j.start_date,j.end_date,j.apply_link,o.name,o.website,o.logo,o.created,p.code,p.suburb,s.name INTO OUTFILE '/tmp/careersandjobs.csv' 
FIELDS TERMINATED BY ',' OPTIONALLY ENCLOSED BY '"' 
ESCAPED BY '\\' 
LINES TERMINATED BY '\n' 
FROM job j 
LEFT JOIN portfolio_job pj 
ON pj.job_id = j.id 
LEFT JOIN organisation o 
ON o.id = j.organisation_id 
LEFT JOIN postcode p 
ON p.id = j.postcode_id 
LEFT JOIN state s 
ON s.id = p.state_id 
WHERE published = 1 
AND end_date > CURDATE() 
AND pj.port_id = 8 

這是背後的原因嗎?

@邁克爾

我已經試過你的建議,但現在產生這個錯誤:

Failed to execute SQL : SQL SELECT j.id,j.title,j.featured,REPLACE(j.body,',',' ') as body,j.created,j.created_by,j.start_date,j.end_date,j.apply_link,o.name,o.website,o.logo,o.created,p.code,p.suburb,s.name INTO OUTFILE '/tmp/careersandjobs.csv' FIELDS TERMINATED BY ',' OPTIONALLY ENCLOSED BY '"' ESCAPED BY '\\' LINES TERMINATED BY "\n" FROM job j LEFT JOIN portfolio_job pj ON pj.job_id = j.id LEFT JOIN organisation o ON o.id = j.organisation_id LEFT JOIN postcode p ON p.id = j.postcode_id LEFT JOIN state s ON s.id = p.state_id WHERE published = 1 AND end_date > CURDATE() AND pj.port_id = 8 failed : Field separator argument is not what is expected; check the manual 

回答

0

你有一些錯別字:SELECT j.id,j.title,j.featured,REPLCAE(j.body,',',' '),j.created,j.created_by,j.start_date,j.end_date,j.apply_link,o.name,o.website,o.logo,o.created,p.code,p.suburb,s.name INTO OUTFILE '/tmp/careersandjobs.csv' FIELDS TERMINATED BY ',' OPTIONALLY ENCLOSED BY '"' ESCAPED BY '\\' LINES TERMINATED BY '\n'

你有REPLCAE,而不是更換

+0

嗨邁克爾,它仍然不起作用 –

+0

它現在有什麼問題? – Michael

+0

我收到以上回復 –