الانتقال إلى الأداة
ViewCSV
الملفات تبقى على جهازك

فرز صفوف CSV

orders.csv· بيانات نموذجية15 صفًا · 8 أعمدة
القيم الفارغة أو غير المطابقة
تحتفظ الصفوف ذات القيم المتساوية بترتيبها الأصلي. تُقارَن الأرقام بدقة، لذا يأتي ⁦9007199254740993⁩ بعد ⁦9007199254740992⁩.
النتيجة
#order_idcustomercityproductquantityunit_priceorder_datestatus
1001041عمر القحطانيتونسChair, ergonomic6144.562026-01-24refunded
2001042سارة المصريالدوحةMonitor 27"9161.362026-02-21shipped
3001043خالد الخطيبعمّانDesk lamp5170.882026-03-27shipped
4001043خالد الخطيبعمّانDesk lamp5170.882026-03-27shipped
5001044فاطمة الحربيدبيDesk lamp1161.162026-04-24pending
6001045نور الزهرانيعمّانNotebook A51·2026-05-02refunded
7001046هدى الدوسريالدوحةMonitor 27"2211.632026-06-17shipped
8001047 علي القحطاني عمّانCoffee beans 1kg257.052026-07-09shipped
9001048عمر المصريالدار البيضاءDesk lamp9216.892026-08-13shipped
10001049أحمد الحربيالرياضUSB-C cable5133.182026-09-01shipped
11001050يوسف الدوسريعمّانUSB-C cable4242.502026-01-22pending
12001051أحمد الشمريالقاهرةDesk lamp2217.962026-02-06refunded
13001052عمر الحسنجدةDesk lamp612.862026-03-18shipped
14001053أحمد السيددبيUSB-C cable9158.312026-04-13pending
15001054عمر الدوسريالدار البيضاءNotebook A5730.612026-05-07shipped

المدخلات: 15 صفًا. النتيجة: 15 صفًا · 8 أعمدة.

بعد فتح ملف CSV أو لصقه، يُختار العمود في الفرز حسب، وطريقة المقارنة في المقارنة كـ، ثم الترتيب، فتظهر الصفوف مرتبة فورًا. ولفض التعادل تُضاف أعمدة ثم حسب، حتى 20 عمودًا إجمالًا. تحتفظ الصفوف ذات القيم المتساوية بترتيبها الأصلي، وتذهب القيم الفارغة أو غير المقروءة إلى النهاية (أو البداية)، ولا يتغير نص أي خلية. يُفرز الملف في متصفحك ولا يُرفع.

طريقة فرز ملف CSV

  1. افتح ملف ⁦.csv⁩ أو ⁦.tsv⁩ أو ⁦.txt⁩، أو أفلته على الأداة، أو الصق الصفوف. يُكتشف المحدِّد وعلامة ترتيب البايت لـ⁦UTF-8⁩ أو ⁦UTF-16⁩؛ ولاختيار محدِّد آخر أو ترميز قديم توجد إعدادات الاستيراد.
  2. يُضبط عمود الفرز الأول مسبقًا على أول عمود في الملف، تصاعديًا، بطريقة نص (⁦file2⁩ قبل ⁦file10⁩). غيِّر الفرز حسب والمقارنة كـ والترتيب حسب الحاجة.
  3. يضيف إضافة عمود آخر مفتاح ثم حسب، ولا يحدد هذا المفتاح الترتيب إلا بين الصفوف المتعادلة في المفاتيح التي فوقه. وتغيّر الأسهم الأولوية.
  4. حدِّد موضع القيم الفارغة أو غير المطابقة: في النهاية أو في البداية.
  5. اختر تنزيل CSV أو نسخ أو فتح في المحرر.

لفرز جزء من الصفوف فقط، أبقِه أولًا بأداة تصفية صفوف CSV. ولمطابقة ملفين مصدَّرين ومرتبين أحدهما بالآخر، استخدم مقارنة ملفات CSV.

اختيار طريقة مقارنة القيم

نص (⁦file2⁩ قبل ⁦file10⁩)ترتيب طبيعي يراعي اللغة: تُقارَن سلاسل الأرقام كأعداد، فيأتي ⁦file2⁩ قبل ⁦file10⁩، وتُرتَّب الأحرف ذات العلامات بجوار حرفها الأساسي (⁦ä⁩ قرب ⁦a⁩). ولغة الصفحة هي التي تحدد قواعد الترتيب.
نص (ترتيب الأحرف)ترتيب صارم حسب رموز الأحرف، يمكن توقعه مع الرموز والمعرّفات، لكن ⁦file10⁩ يأتي قبل ⁦file2⁩، وتسبق كل الأرقام الأحرف، ويأتي ⁦ä⁩ بعد ⁦z⁩.
رقمأرقام عشرية بسيطة مثل ⁦-3⁩ و⁦0.25⁩ و⁦007⁩ و⁦1e3⁩ تُقارَن بدقة تامة، فيأتي ⁦9007199254740993⁩ بعد ⁦9007199254740992⁩. فواصل الآلاف والعملات والوحدات ليست أرقامًا. وعند ضبط الفاصل العشري على فاصلة ⁦1,5⁩ تُقرأ ⁦2,25⁩ اثنين وربعًا.
تاريختواريخ بـتنسيق التاريخ المختار: ⁦ISO 2024-03-31⁩ (مع وقت وأجزاء من الثانية وإزاحة ⁦Z⁩ أو ⁦+02:00⁩ اختياريًا، تُحوَّل إلى UTC)، أو اليوم أولًا ⁦31/03/2024⁩، أو الشهر أولًا ⁦03/31/2024⁩، أو ⁦2024/03/31⁩.

تُعامَل الأحرف اللاتينية الكبيرة والصغيرة على أنها متساوية ما لم يُفعَّل مطابقة الأحرف الكبيرة والصغيرة تمامًا. وفي الترتيب الطبيعي تحتفظ القيم التي لا تختلف إلا في حالة الأحرف بترتيبها الأصلي؛ ومع تفعيل الخيار تسبق الأحرف الصغيرة الكبيرة في الإنجليزية. أما العلامات على الأحرف فتُحتسب دائمًا في الترتيب الطبيعي (⁦resume⁩ و⁦résumé⁩ مختلفتان).

القيم الفارغة وغير الصالحة والتعادل

  • الفرز مستقر: الصفوف المتساوية في كل المفاتيح تبقى بترتيبها في الملف، تصاعديًا وتنازليًا.
  • الخلية الفارغة أو التي لا تحتوي إلا مسافات تُعدّ فارغة. وتتبع الخلايا الفارغة إعداد القيم الفارغة أو غير المطابقة في الترتيب التصاعدي والتنازلي على السواء.
  • مع رقم أو تاريخ تُوضع القيم التي لا يمكن قراءتها بالتنسيق المختار (⁦n/a⁩ و⁦1,250⁩ و⁦31/03/2024⁩ مع ISO) مع القيم الفارغة، وتذكر ملاحظة عددها.
  • لا يتغير إلا ترتيب الصفوف. تُكتب الأصفار في بداية القيم وعلامات الاقتباس والمسافات وفواصل الأسطر داخل القيم كما هي تمامًا، ويبقى صف العناوين أولًا.
  • يُكتب العنوان الفارغ بصيغة ⁦Column 3⁩، والعنوان المكرر بصيغة ⁦name (2)⁩. والصفوف الأقصر من صف العناوين تُكمَّل بقيم فارغة.
  • يحتفظ الملف المنزَّل بمحدِّد الملف ونهايات أسطره وفاصل السطر الأخير، وبترميزه إذا كان ⁦UTF-8⁩ (مع علامة ترتيب البايت أو دونها) أو ⁦UTF-16 LE⁩ أو ⁦Windows-1252⁩؛ أما الترميزات الأخرى فتُحفظ بـ⁦UTF-8⁩.

لماذا يبدو ترتيب الفرز خاطئًا

  • القيمة 10 تأتي قبل 9. المفتاح يُقارَن بطريقة نص (ترتيب الأحرف). اختر رقم، أو نص (⁦file2⁩ قبل ⁦file10⁩) للتسميات المختلطة مثل ⁦v10⁩.
  • بعض الأرقام مجمّعة مع القيم الفارغة. ليست أرقامًا بسيطة: ابحث عن ⁦1,250⁩ أو ⁦€40⁩ أو ⁦12 kg⁩ أو فاصلة عشرية مع اختيار نقطة ⁦1.5⁩. وتذكر الملاحظة فوق النتيجة عددها.
  • التواريخ بترتيب خاطئ. التواريخ التي يأتي فيها اليوم أولًا تُقرأ خطأً إذا قورنت كنص أو مع الشهر أولًا ⁦03/31/2024⁩. اختر التنسيق الذي يستخدمه الملف.
  • الأسماء ذات العلامات تنتهي في الآخر. استخدم نص (⁦file2⁩ قبل ⁦file10⁩) بدل ترتيب الأحرف.

حدود الفرز والخصوصية

حتى 20 عمود فرز. الملفات حتى 25 ميغابايت و100 ألف صف و250 عمودًا ومليوني خلية؛ وللملف الأكبر، قسّمه أولًا بأداة تقسيم ملفات CSV أو استبعد الصفوف التي لا تحتاجها بالتصفية.

يجري الفرز في متصفحك، ولا يُرفع ملف CSV إلى أي خادم.

مثال: الفرز حسب الفريق ثم حسب الأولوية

تذاكر دعم مرتبة حسب team ‏(نص (⁦file2⁩ قبل ⁦file10⁩)، تصاعدي)، ثم حسب priority ‏(رقم، تنازلي). تأتي ⁦10⁩ قبل ⁦2⁩ لأن المفتاح رقمي، وتذهب الأولوية الفارغة إلى نهاية فريقها، ويُعدّ ⁦Support⁩ و⁦support⁩ فريقًا واحدًا، ويتعادل ⁦T-10⁩ و⁦T-11⁩ في المفتاحين فيحتفظان بترتيبهما الأصلي.

CSV
ticket,team,priority,opened
T-9,Billing,2,2024-05-03
T-10,Support,1,2024-05-01
T-2,Billing,,2024-05-02
T-11,support,1,2024-04-30
T-1,Billing,10,2024-05-04
CSV بعد الفرز
ticket,team,priority,opened
T-1,Billing,10,2024-05-04
T-9,Billing,2,2024-05-03
T-2,Billing,,2024-05-02
T-10,Support,1,2024-05-01
T-11,support,1,2024-04-30

أسئلة وأجوبة

كيف أفرز حسب عمود ثم حسب عمود آخر؟

اختر العمود الأول في الفرز حسب، ثم إضافة عمود آخر واختر الثاني في ثم حسب. لا يرتب المفتاح الثاني إلا الصفوف المتعادلة في الأول.

لماذا لا يغيّر الفرز أرقامي أو تواريخي؟

تُحلَّل القيم للمقارنة فقط. ويحتوي الناتج النص نفسه الموجود في المدخلات، فتُكتب ⁦007⁩ و⁦2024-03-05T09:00+02:00⁩ كما كانتا تمامًا.

هل يمكن الفرز بترتيب مخصص مثل منخفض ومتوسط ومرتفع؟

ليس مباشرة؛ تفرز الأداة كنص أو رقم أو تاريخ. أضِف عمودًا بترتيب مثل 1 و2 و3 في محرر CSV، ثم افرز حسبه بطريقة رقم.

المعايير والمراجع