SELECT A,B,C
FROM X
INTO OUTFILE 'file name';
ऐसा करने के लिए फ़ाइल विशेषाधिकार की आवश्यकता होती हैं, और यह फ़ाइलें ओवरराइट नहीं करेगी।
INTO OUTFILE
आदि यह करने के लिए विकल्पों में से एक गुच्छा के साथ-साथ, इस तरह के रूप FIELDS ENCLOSED BY
, FIELDS ESCAPED BY
, है ... कि आप look up in the manual कर सकते हैं।
एक CSV फ़ाइल का उत्पादन करने के लिए, आप की तरह कुछ करना होगा:
SELECT A,B,C
INTO OUTFILE '/tmp/result.txt'
FIELDS TERMINATED BY ',' OPTIONALLY ENCLOSED BY '"'
LINES TERMINATED BY '\n'
FROM X;
डेटा फ़ाइल से पीठ में लोड करने के लिए एक ही विकल्प आप इसे बाहर डंप करने के लिए इस्तेमाल के साथ LOAD DATA INFILE
आदेश का उपयोग करें।
SELECT col1, col2
INTO OUTFILE '/filepath/export.txt'
FIELDS TERMINATED BY ',' OPTIONALLY ENCLOSED BY '"'
LINES TERMINATED BY '\n'
FROM table;
बिल्कुल सही! जाहिर है यह कई क्षेत्रों के साथ भी काम करता है: echo 'डेटाबेस.table से कॉलम 1, कॉलम 2, कॉलम 3 का चयन करें;' | mysql -u user -ppassword> output.txt –
शेल कमांड के लिए धन्यवाद! इसमें आउटपुट में फ़ील्ड नाम भी शामिल है। क्या कोई रास्ता है जिसे इसे ओमेट किया जा सकता है? – axil
@axil '-N, --skip-column-names' विकल्प का उपयोग करें। –