UTILS.
۱۰۰٪ در مرورگر

پرس‌وجوی CSV با SQL

یک CSV را بارگذاری کنید و روی آن SQL واقعی (SELECT، WHERE، GROUP BY، JOIN) اجرا کنید — ۱۰۰٪ در مرورگر شما.

موتور خود را در نخستین استفاده بارگذاری می‌کند، بنابراین دانلود آفلاینی ندارد؛ اما همچنان به‌صورت خصوصی در مرورگر شما اجرا می‌شود و چیزی بارگذاری نمی‌شود.

درباره این ابزار

این ابزار یک CSV را در یک پایگاه‌داده واقعی SQLite در حافظه بارگذاری می‌کند و به شما اجازه می‌دهد SQL اصیل روی آن اجرا کنید — SELECT، WHERE، ORDER BY، GROUP BY، تجمیع‌هایی مانند SUM و COUNT، زیرپرس‌وجوها و خودپیوندها همه دقیقاً همان‌طور که در یک پایگاه‌داده کار می‌کنند اجرا می‌شوند. این ابزار با SQLite رسمی که به WebAssembly کامپایل شده نیرو می‌گیرد، بنابراین موتور پرس‌وجو چیز واقعی است، نه یک بازپیاده‌سازی ناقص.

هیچ چیز آپلود نمی‌شود. موتور SQLite و CSV شما هرگز دستگاه‌تان را ترک نمی‌کنند — کل پایگاه‌داده در حافظه زبانه مرورگر شما زندگی می‌کند و وقتی آن را ببندید ناپدید می‌شود. همین آن را به یک دفترچه یادداشت امن برای کاوش در خروجی‌ها، داده‌های فروش، لاگ‌ها یا هر صفحه‌گسترده‌ای که ترجیح می‌دهید در یک پایگاه‌داده آنلاین نچسبانید تبدیل می‌کند. چون از ساخت eval-free رسمی SQLite استفاده می‌کند، زیر سیاست‌های امنیتی سختگیرانه‌ای هم که ابزارهای سبک sql.js در آن مسدود می‌شوند اجرا می‌شود.

نام ستون‌ها از ردیف سرآیند گرفته و به شناسه‌های معتبر پاک‌سازی می‌شوند؛ هر مقدار به‌صورت متن ذخیره می‌شود، بنابراین وقتی به محاسبات نیاز دارید در پرس‌وجوی خود به عدد تبدیل کنید (برای مثال CAST(price AS REAL)). نتایج به‌صورت جدولی که می‌توانید به‌عنوان CSV دانلود کنید نمایش داده می‌شوند.

پرسش‌های پرتکرار

آیا CSV یا پرس‌وجوی من جایی آپلود می‌شود؟
خیر. موتور SQLite کاملاً درون مرورگر شما از طریق WebAssembly اجرا می‌شود و پایگاه‌داده فقط در حافظه نگهداری می‌شود. CSV، SQL و نتایج شما هرگز دستگاه‌تان را ترک نمی‌کنند و با بستن زبانه از بین می‌روند.
چه SQL و چه قالب‌های فایلی پشتیبانی می‌شوند؟
ورودی CSV است (جداشده با کاما، نقطه‌ویرگول، تب یا خط عمودی). موتور، SQLite واقعی است، بنابراین پرس‌وجوهای استاندارد SELECT — WHERE، ORDER BY، GROUP BY، HAVING، LIMIT، تجمیع‌ها، زیرپرس‌وجوها و پیوندها — پشتیبانی می‌شوند. بارگذاری CSV یک جدول تازه می‌سازد، بنابراین این یک بازرمزگذاری با افت نیست؛ صرفاً مقادیر شما را در یک پایگاه‌داده می‌خواند.
چرا مقایسه‌های عددی مانند متن رفتار می‌کنند؟
هر ستون به‌صورت TEXT ذخیره می‌شود تا چیزی حدس زده یا از دست نرود، که یعنی SQLite آن‌ها را به‌عنوان رشته مرتب و مقایسه می‌کند. وقتی به اعداد واقعی نیاز دارید در پرس‌وجوی خود تبدیل کنید — مثلاً ORDER BY CAST(price AS REAL) DESC یا WHERE CAST(qty AS INTEGER) > 100.
نام ستون‌ها و جدول چگونه انتخاب می‌شوند؟
نام ستون‌ها از ردیف سرآیند می‌آید (با روشن‌بودن گزینه سرآیند) و به شناسه‌های معتبر SQL پاک‌سازی می‌شوند و تعارض‌ها یکتاسازی می‌گردند؛ بدون سرآیند، آن‌ها به col1، col2 و همین‌طور تبدیل می‌شوند. نام جدول به‌طور پیش‌فرض t است و می‌توان آن را پیش از بارگذاری CSV تغییر داد.

ابزارهای بیشتر