如何使用MySQL OUTFILE从表中获取所有行

时间:2011-04-18 12:41:11

标签: mysql sql into-outfile

我正在使用MySQL使用以下语法将数据库表的内容输出到CSV文件:

SELECT 'Keyword_1_Frequency', 'Keyword_2_Frequency', 'Keyword_3_Frequency', 
'Keyword_4_Frequency', 'Keyword_5_Frequency', 'Keyword_6_Frequency', 
'Keyword_7_Frequency', 'Keyword_8_Frequency', 'Keyword_9_Frequency', 
'Keyword_10_Frequency', 'Keyword_11_Frequency', 'Keyword_12_Frequency','RSSFeedCategoryDescription'  
UNION (SELECT Keyword_1_Frequency, Keyword_2_Frequency, Keyword_3_Frequency, 
Keyword_4_Frequency, Keyword_5_Frequency, Keyword_6_Frequency, Keyword_7_Frequency, 
Keyword_8_Frequency, Keyword_9_Frequency, Keyword_10_Frequency, Keyword_11_Frequency, 
Keyword_12_Frequency, RSSFeedCategoryDescription   
FROM dm_16_945848_18042011_1303128210855  
INTO OUTFILE 'C:/temp/dm_16_945848_18042011_1303128210855.csv'  
FIELDS TERMINATED BY ','  
LINES TERMINATED BY '\n');

第一个SELECT子句只是将列的标题作为CSV文件的第一行。

这个查询似乎有效,但出于一些令人抓狂的原因,它并没有从表中提取所有行。例如,如果表中有12行,则为10行。

任何人都可以解释原因吗?我在MySQL支持页面上看不到任何内容。

由于

摩根先生。

1 个答案:

答案 0 :(得分:2)

您表中可能有重复项,而UNION会删除它们。

尝试将UNION替换为UNION ALL