صادر کردن داده ها از PostgreSQL به فایل CSV

چگونه داده ها را از PostgreSQL به یک فایل CSV صادر کنیم

آیا نیاز به ارسال سریع داده ها به مشتری یا به اشتراک گذاری گزارش برای تجزیه و تحلیل بیشتر دارید؟ یک فایل CSV یک گزینه اشتراک گذاری عالی است! بیایید نگاهی بیندازیم که چگونه می توانید از این فرمت برای صادرات داده ها از پایگاه داده PostgreSQL استفاده کنید.

در این مقاله، ابتدا بررسی خواهیم کرد که فرمت فایل CSV چیست و چرا هنگام صادرات پایگاه داده PostgreSQL شما مفید است. سپس نمونه‌ای از داده‌ها را از یک پایگاه داده واقعی با استفاده از psql در خط فرمان و pgAdmin، یک رابط رایگان و منبع باز برای پایگاه‌های داده PostgreSQL صادر می‌کنیم.

فایل های CSV چیست؟

CSV مخفف عبارت Comma-Separated Values ​​است. این فرمت فایل به شما امکان می دهد داده ها را در متن ساده ذخیره کنید، که آن را برای به اشتراک گذاری داده ها در بین برنامه ها عالی می کند.

یک فایل CSV حاوی ردیف هایی از داده های مربوط به رکوردهای فردی است. سطر اول معمولاً نام ستون ها است. مقادیر در هر سطر با کاما از هم جدا می شوند. اگرچه کاما متداول ترین جداکننده مورد استفاده است (همانطور که از نام قالب نشان می دهد)، کاراکترهای دیگر (مانند نقطه ویرگول، تب یا فاصله) نیز می توانند مقادیر را از هم جدا کنند.

در اینجا نمونه ای از یک فایل CSV آمده است. ما یکی را درست مانند آن در بخش های بعدی صادر خواهیم کرد:

store_id,revenue,day

1,100.42,2023-05-01

1,148.89,2023-05-02

2,238.98,2023-05-03

همانطور که می بینید، ستون اول شناسه فروشگاه را ذخیره می کند، ستون دوم درآمد را ذخیره می کند و ستون سوم تاریخ را ذخیره می کند. هر ردیف یک رکورد است. بسیار شبیه صفحات گسترده و پایگاه های داده سازماندهی شده است، اما همه در متن است!

چرا یک پایگاه داده را به عنوان یک فایل CSV صادر کنیم؟

فایل های CSV را می توان تقریباً با هر نرم افزار داده گرا باز کرد. صادر کردن داده های PostgreSQL خود به یک فایل CSV به این معنی است که می توانید به راحتی اطلاعات را با همکاران خود به اشتراک بگذارید، حتی اگر آنها از ابزارهای مختلف استفاده کنند.

فرمت CSV همچنین بومی بسیاری از ابزارها و صفحات گسترده تجزیه و تحلیل داده است. صادرات از طریق این فرمت به شما امکان می دهد تا داده ها را به سرعت و به راحتی برای تجزیه و تحلیل عمیق، تجسم، و گزارش انتقال دهید.

صادر کردن داده ها از PostgreSQL به CSV

داده ها

این جدول نمونه ما به نام فروش خواهد بود. هر ردیف نشان دهنده میزان درآمد هر فروشگاه در یک روز معین است.

فروش

شناسه فروشگاه درآمد تاریخ
1 100.42 2023-05-01
2 49.08 2023-05-01
1 148.89 2023-05-02
2 78.30 2023-05-02
1 143.78 2023-05-03
2 238.98 2023-05-03

صادر کردن داده با پرس و جوهای SQL

ما از دو کوئری SQL مختلف برای آزمایش روش های مختلف صادرات استفاده خواهیم کرد. (هنگامی که درخواست های خود را می نویسید، داشتن برگه تقلب PostgreSQL در نزدیکی ما برای افزایش بهره وری مفید است.) این اولین مورد است:

SELECT * FROM sales

این اولین کوئری ساده است که همه چیز را در جدول انتخاب می کند. ایده این است که مطمئن شویم داده ها را در طول صادرات از دست نمی دهیم.

در اینجا پرس و جو دوم (بسیار پیچیده تر) وجود دارد:

WITH max_revs (store_id, day, revenue, max_rev) AS (

    SELECT

        store_id,

        day,

        revenue,

        MAX(revenue) OVER(PARTITION BY day)

    FROM sales

)

SELECT

    store_id,

    day,

    max_rev

FROM max_revs

WHERE revenue = max_rev;

 

پرس و جو دوم یک گزارش ساده را شبیه سازی می کند. برای هر روز، فروشگاه برتر بر اساس درآمد و بالاترین درآمد را به دست می آورد. این همان چیزی است که ممکن است هنگام کار در تجزیه و تحلیل داده ها بنویسید. ما از یک عبارت جدول مشترک برای انتخاب بالاترین درآمد روز استفاده می کنیم. پرس و جو خارجی (دوم) فروشگاه(هایی) را انتخاب می کند که با درآمد بازگردانده شده توسط CTE مطابقت دارند.

در حال حاضر، اجازه دهید به صادرات داده ها از PostgreSQL به یک فایل CSV برگردیم. هنگامی که داده های مورد نظر خود را بدست آوردیم، باید فرآیند صادرات را شروع کنیم.

صادرات پایگاه داده با استفاده از خط فرمان

ابتدا، اجازه دهید صادرات یک پایگاه داده PostgreSQL را از طریق خط فرمان بررسی کنیم. شما در اینجا دو گزینه دارید: با استفاده از دستور \copy یا عبارت COPY. ما در یک لحظه تفاوت بین این دو را توضیح خواهیم داد.

در حالی که استفاده از هر یک از این روش ها نسبت به استفاده از pgAdmin ساده تر است، احتمالاً همه چیزهایی را که برای آن نیاز دارید در اختیار دارید. بنابراین، بیایید شروع کنیم.

اتصال به پایگاه داده با psql

برای هر دو گزینه خط فرمان، از psql استفاده خواهیم کرد. این یک ابزار خط فرمان برای پایگاه های داده PostgreSQL است.

برای اتصال به پایگاه داده دستور زیر را وارد کنید:

psql -h <hostname> -p <port> -d <database name> -U <username>

نام میزبان (یا آدرس) پایگاه داده را جایگزین نام میزبان کنید. پورت در سرور راه دور به همراه نام پایگاه داده و نام کاربری مشخص می شود. پس از این، از شما یک رمز عبور خواسته می شود.

هنگامی که به پایگاه داده متصل شدید، می توانید از دستور \copy یا روش COPY برای صادرات داده های خود استفاده کنید. ما با نشان دادن \copy شروع می کنیم.

1. صادر کردن داده با استفاده از \copy

دستور \copy مستقیماً نتیجه پرس و جو محلی شما را در یک فایل محلی در دستگاه شما کپی می کند. در سمت کلاینت کار می کند، بنابراین اگر فقط مجوز خواندن پایگاه داده داشته باشید، انتخاب خوبی است.

در اینجا syntax است:

\copy (query) to ‘filename’ with cvs [header]

زمانی که می‌خواهید جدول تولید شده یک ردیف اضافی در بالای آن داشته باشد، می‌توانید آرگومان هدر اختیاری را اضافه کنید. برای اطمینان از وضوح نتایج، از این آرگومان در تمام دستورات بعدی استفاده خواهم کرد.

صادر کردن داده با استفاده از pgAdmin

حالا بیایید نگاهی به گزینه دوم بیندازیم که از رابط کاربری گرافیکی (GUI) استفاده می کند. شاید قبلاً با pgAdmin آشنا باشید. این یک برنامه مدیریت پایگاه داده PostgreSQL رایگان و منبع باز است. این یک راه ساده و سرراست برای صادرات داده ها از پایگاه داده Postgres است.

به پایگاه داده متصل شوید

pgAdmin را باز کرده و روی Add New Server کلیک کنید.

در صفحه عمومی، یک نام برای اتصال انتخاب کنید.

در صفحه اتصال، نام هاست (“localhost” اگر پایگاه داده را روی رایانه شخصی خود اجرا می کنید)، نام پایگاه داده، نام کاربری و رمز عبور را وارد کنید.

و در نهایت روی Save کلیک کنید. اگر اتصال به درستی برقرار شده باشد، صفحه داشبورد شما اکنون نمودارهایی از فعالیت پایگاه داده شما را نمایش می دهد.

صادرات نتایج پرس و جو

ابتدا ابزار پرس و جو را با کلیک کردن روی نماد پایگاه داده (سه دیسک) در نوار ابزار بالا یا با استفاده از Alt+Shift+Q باز می کنیم. اکنون می توانید با نوشتن پرس و جو در کادر متن و اجرای آنها با استفاده از دکمه پخش در بالا یا کلید F5، پایگاه داده را پرس و جو کنید.

هنگامی که یک پرس و جو را اجرا می کنید، نتیجه آن در پنجره پایین نمایش داده می شود. برای ذخیره نتیجه در یک فایل CSV، دکمه دانلود را درست بالای داده های به دست آمده فشار دهید.

 

صادر کردن داده ها از PostgreSQL به فایل CSV

 

 

همانطور که می بینید، نتایج مشابه با ابزارهای خط فرمان است. تفاوت اصلی این است که pgAdmin جابجایی بین طراحی کوئری ها و ذخیره نتایج را بسیار آسان تر می کند.

 

برای خرید لایسنس نرم افزار Tableau ، می‌توانید از خدمات ما استفاده نموده و درخواست خود را از طریق فرم زیر ثبت نمایید.

فرم درخواست لایسنس Tableau

tableau desktop download

بدون دیدگاه

دیدگاهتان را بنویسید

نشانی ایمیل شما منتشر نخواهد شد. بخش‌های موردنیاز علامت‌گذاری شده‌اند *