এসকিউএলাইট: আমি কীভাবে কোনও সিএসভি ফাইল হিসাবে কোনও প্রশ্নের ফলাফল সংরক্ষণ করব?


উত্তর:


248

থেকে এখানে এবং d5e5 এর মন্তব্য:

আপনাকে আউটপুটটি সিএসভি-মোডে স্যুইচ করতে হবে এবং ফাইল আউটপুটটিতে স্যুইচ করতে হবে।

sqlite> .mode csv
sqlite> .output test.csv
sqlite> select * from tbl1;
sqlite> .output stdout

4
এই ফাইলটি কোথায় সংরক্ষণ করা হচ্ছে?
— রায়লাভলেস

34
এটি স্ট্যান্ডার্ড আউটপুট, সম্ভবত আপনার পর্দা মুদ্রিত। কোনও ফাইলে আউটপুট সংরক্ষণ করতে: স্ক্লাইট> .আউটপুট টেস্ট.সিএসভি স্ক্রিনে মুদ্রণ ফলাফল পুনরুদ্ধার করতে: sqlite> .আউটপুট stdout
— d5e5

1
পয়েন্টারগুলি যেখানে আমি ডাব্লু / নোড লাইব্রেরিতে এটি করব তা জানতে পারি?
— কুয়ানব

2
স্ক্লাইট> .আউটপুট সি ব্যবহার করুন: / ব্যবহারকারী / জডো / ডকুমেন্টস / আউটপুট.csv আপনি যদি কোনও নির্দিষ্ট পথ ব্যবহার করতে চান তবে।
— ডাস্টিন

ওহে! আমি এটা করেছি. যদিও আমার কোয়েরিটি পুরোপুরি কাজ করেছে, ফাইল আউটপুট খালি। কেউ জানে কেন?
— ভ্যালেরিয়া লোবস অসান্দন

144

আপনার সিএসভি ফাইলে কলামের নাম অন্তর্ভুক্ত করতে আপনি নিম্নলিখিতগুলি করতে পারেন:

sqlite> .headers on
sqlite> .mode csv
sqlite> .output test.csv
sqlite> select * from tbl1;
sqlite> .output stdout

আপনি যে পরিবর্তনগুলি করেছেন তা যাচাই করতে আপনি এই আদেশটি চালাতে পারেন:

sqlite> .show

আউটপুট:

echo: off   
explain: off   
headers: on   
mode: csv   
nullvalue: ""  
output: stdout  
separator: "|"   
stats: off   
width: 22 18 

3
কলামের নামগুলি কীভাবে পাবেন তা দেখানোর জন্য ধন্যবাদ! এই উত্তরটি আরও বেশি হওয়া দরকার।
— স্টান জেমস

নোট করুন যে sqlite3 পূর্ববর্তী সামগ্রী মোছা ছাড়াই ফাইলের শেষে আউটপুট সংযোজন করে।
— kupgov

1
কিন্তু প্রতিটি .output filename.csvসম্পাদন ফাইল তৈরি করে বা মুছে দেয়।
— kupgov

25

Gdw2 এবং d5e5 থেকে ভাল উত্তর। এটিকে কিছুটা সহজ করার জন্য একক সিরিজের কমান্ডের সাথে সুপারিশগুলি একসাথে টানা:

sqlite> .mode csv
sqlite> .output test.csv
sqlite> select * from tbl1;
sqlite> .output stdout

23

উপরের উত্তরগুলি ছাড়াও আপনি .onceএকইভাবে ব্যবহার করতে পারেন .output। এটি নির্দিষ্ট ফাইলটিতে কেবলমাত্র পরবর্তী ক্যোয়ারিকে আউটপুট দেয় , যাতে আপনাকে অনুসরণ করতে না হয়.output stdout ।

সুতরাং উপরের উদাহরণে

.mode csv
.headers on
.once test.csv
select * from tbl1;

1

বিকল্পভাবে আপনি এটি এক লাইনে করতে পারেন (উইন 10 তে পরীক্ষিত)

sqlite3 -help
sqlite3 -header -csv db.sqlite 'select * from tbl1;' > test.csv

বোনাস: সেমিডলেট এবং পাইপ (|) দিয়ে পাওয়ারশেল ব্যবহার করা।

get-content query.sql | sqlite3 -header -csv db.sqlite > test.csv

যেখানে ক্যোয়ারী.এসকিউএল আপনার এসকিউএল কোয়েরি সমন্বিত একটি ফাইল

আমাদের সাইট ব্যবহার করে, আপনি স্বীকার করেছেন যে আপনি আমাদের কুকি নীতি এবং গোপনীয়তা নীতিটি পড়েছেন এবং বুঝতে পেরেছেন ।
Licensed under cc by-sa 3.0 with attribution required.