0

I'm trying to execute this MySQL to import some data into a csv file.

SELECT *
FROM purchase WHERE purchase.PO_DATE >= '1-1-2016'
INTO OUTFILE "D:\\Reports\\Jan.csv"
FIELDS TERMINATED BY ','
ENCLOSED BY '"'
LINES TERMINATED BY '\n'

But I'm receiving the output

Static analysis:

11 errors were found during analysis.

    Unrecognized keyword. (near "FIELDS" at position 99)
    Unrecognized keyword. (near "TERMINATED" at position 106)
    Unrecognized keyword. (near "BY" at position 117)
    Unexpected token. (near "','" at position 120)
    Unrecognized keyword. (near "ENCLOSED" at position 125)
    Unrecognized keyword. (near "BY" at position 134)
    Unexpected token. (near "'"'" at position 137)
    Unrecognized keyword. (near "LINES" at position 142)
    Unrecognized keyword. (near "TERMINATED" at position 148)
    Unrecognized keyword. (near "BY" at position 159)
    Unexpected token. (near "'\n'" at position 162)

SQL query: Documentation

SELECT * FROM purchase WHERE purchase.PO_DATE >= '1-1-2016' INTO OUTFILE "D:\\Reports\\Jan.csv" FIELDS TERMINATED BY ',' ENCLOSED BY '"' LINES TERMINATED BY '\n' 

Anyone knows how to solve this issue ?

Shadow
  • 33,525
  • 10
  • 51
  • 64
Mo-
  • 155
  • 15

2 Answers2

4

The information regarding your output file should be specified between SELECT and FROM clauses:

SELECT *
INTO OUTFILE "D:\Reports\Jan.csv"
FIELDS TERMINATED BY ','
ENCLOSED BY '"'
LINES TERMINATED BY '\n'    
FROM purchase 
WHERE purchase.PO_DATE >= '1-1-2016'

MySQL 5.7 Reference Manual | LOAD DATA INFILE Syntax

Thomas G
  • 9,886
  • 7
  • 28
  • 41
  • 1
    Worked for me, even with the fact the SQL editor says it have an error, when I click go it works fine – Mo- Nov 10 '16 at 14:47
1

The from clause is in wrong position should be

SELECT * 
INTO OUTFILE "D:\Reports\Jan.csv"
FIELDS TERMINATED BY ','
ENCLOSED BY '"'
LINES TERMINATED BY '\n'
FROM purchase 
WHERE purchase.PO_DATE >= '1-1-2016'
ScaisEdge
  • 131,976
  • 10
  • 91
  • 107