วิธีใช้:การเรียงลำดับ

== การใช้ตารางเรียงลำดับได้**
ตารางจัดเรียงได้ดูได้จากลูกศรในเซลล์หัวตาราง เมื่อคลิกที่ลูกศรดังกล่าวจะทำให้มีการเรียงแถวตารางตามค่าในสดมภ์ที่เลือก โดยเมื่อคลิกครั้งแรกจะเรียงลำดับจากน้อยไปมาก และเมื่อคลิกครั้งถัดไปจะสลับกันระหว่างเรียงจากน้อยไปมากและมากไปน้อย
กระบวนการเรียงลำดับที่จริงนั้นจะเกิดขึ้นบนคอมพิวเตอร์ของคุณโดยใช้จาวาสคริปต์ฝั่งลูกข่าย ด้วยเหตุนี้จึงสามารถใช้ฟังก์ชันดังกล่าวเฉพาะเมื่อคุณเปิดใช้งานจาวาสคริปต์ในเว็บเบราว์เซอร์ของคุณ กระบวนการเรียงลำดับนี้ยังขึ้นอยู่กับคอมพิวเตอร์ของคุณและปริมาณข้อมูล การเรียงลำดับตารางขนาดใหญ่มากบนคอมพิวเตอร์ช้าอาจกินเวลานานมาก

**ตัวอย่าง**
นี่เป็นตัวอย่างของตาราง เรียงลำดับได้ ขนาดเล็ก

**ตารางที่มีหัวเรื่องซับซ้อนมากขึ้น**
ตารางที่มีหัวเรื่องซับซ้อนกว่าตารางแรกก็เรียงลำดับได้อย่างถูกต้อง ดูตัวอย่าง

**ตารางที่มีแถวข้อมูลซับซ้อน**

ตารางสามารถมีเซลล์ที่ครอบคลุมหลายแถวได้ โดยใช้ |rowspan=n (ดู วิธีใช้:rowspan)
ต้องระบุจำนวนแถวสำหรับการใช้ rowspan แต่ละครั้ง ก่อนสามารถเรียงลำดับได้ การตั้งค่า rowspan ต้องถูกต้อง การจัดระเบียบ rowspan ที่ไม่ถูกต้องจะทำให้ตัวเลือกการเรียงลำดับเสีย ทำให้ได้ข้อมูลไม่ถูกต้อง ดูตัวอย่างด้านล่าง
เมื่อเรียงลำดับแล้วทุกแถวจะมีการเติม ผู้ใช้ที่มีประสบการณ์ไม่มากนักสามารถบำรุงรักษาตารางที่ไม่มี rowspan ได้ง่ายกว่ามาก รวมถึงผู้ใช้ที่แวะมาครั้งเดียวเพื่อแก้ไขตาราง
จำนวน rowspan ที่ถูกต้อง โดยเรียงลำดับใช้การได้
สังเกตว่าหลังจากเรียงลำดับแล้ว เซลล์ที่ rowspan จะตัดเข้าสู่แถวและซ้ำเนื้อหาของแถวเหล่านั้น (ปี "2014" ในตัวอย่าง)
จำนวน rowspan ไม่ถูกต้องจะทำให้การเรียงลำดับเสีย และทำให้แถวและสดมภ์ผสมปนเปกัน

**เครื่องมือแก้ไขและ rowspan ตารางออนไลน์**
มีตัวแก้ไขตารางวิกิออนไลน์อย่างง่ายที่นี่-  wikitable.eu5.org
โปรแกรมนี้ทำให้การแก้ไขข้อความและลิงก์ในเซลล์แต่ละเซลล์ ง่ายมากเมื่อไม่มี rowspan ในตัวตาราง ดูส่วนที่แล้ว หากไม่มี rowspan จะทำให้การเปลี่ยนแปลงกรอบพื้นเดิมของตารางและย้ายเซลล์ไปมาได้ง่ายขึ้น เมื่อกรอบข้อความวิกิง่ายขึ้น โปรแกรมแก้ไขตารางออนไลน์ก็เรียบง่ายตามไปด้วย เพราะคุณไม่ต้องแก้ไขข้อความวิกิมากเท่ากับตารางซับซ้อนเพื่อแก้ไขตาราง

**ตัวเลือกสำหรับการเพิ่มสดมภ์ในจอภาพแคบ**

**หัวเรื่องแนวตั้ง**
ดู: แม่แบบ:Vert header
แม่แบบนี้ยังใช้งานได้กับหัวเรื่องที่ทอดข้ามหลายแถวหรือสดมภ์ (โดยใช้ rowspan และ colspan) หมายเหตุว่าไม่มีขีดตั้ง | ระหว่าง rowspan=2 และ 
วิธีนี้ใช้ได้กับทุกแถวที่อยู่ท้ายตารางซึ่งอยู่ติดกันและประกอบขึ้นจากเซลล์หัวเรื่องทั้งหมด

**ท้ายเรื่องธรรมดา**
วิธีนี้ใช้ class="sortbottom" ในแถวตารางที่ต้องการ (บรรทัดขึ้นต้นด้วย 
สิ่งที่ปรากฏในเบราว์เซอร์ของคุณ
สามารถตรึงหลายบรรทัดไว้ท้ายตารางได้ ตราบเท่าที่บรรทัดดังกล่าวต่อเนื่องกัน

**การสร้างโครงแบบการเรียงลำดับ**

**บังคับให้สดมภ์หนึ่งมีชนิดข้อมูลเฉพาะ**
สามารถเพิ่มลักษณะประจำ data-sort-type="..." ในหัวเรื่องของสดมภ์เพื่อให้แน่ใจว่าเซลล์ที่อยู่ข้างใต้ถือเป็นข้อมูลชนิดที่ระบุ
ค่าต่อไปนี้ (ไม่ไวต่ออักษรใหญ่เล็ก) สมเหตุสมผลสำหรับ data-sort-type:- text- number- currency- url สำหรับที่อยู่เว็บไซต์- IPAddress สำหรับเลขที่อยู่ไอพี- date สำหรับรูปแบบวันที่มาตรฐานเฉพาะภาษา- isoDate สำหรับวันที่ในรูปแบบ ISO YYYY-MM-DD ดู: วันที่ ISO- usLongDate สำหรับวันที่ในรูปแบบสหรัฐ (เดือนมาก่อนวันที่)- time
ตัวอย่างเช่น
หากไม่มี data-sort-type=text ในหัวเรื่อง ตัวเรียงลำดับตารางจะสับสนกับชื่อเรื่องที่เป็นจำนวนในแถวแรก ๆ แล้วจะถือว่าทั้งสดมภ์เป็นจำนวน ทำให้มีการเรียงลำดับผิดโดยถือว่าชื่อเรื่องที่ไม่ใช่จำนวนเป็นศูนย์ไม่ว่าการเรียงลำดับพยัญชนะของข้อความเป็นอย่างไร
หมายเหตุว่าหากสดมภ์หนึ่งที่ไม่ประกาศ sort-type มีเฉพาะค่าจำนวน แต่มีการอ้างอิง  ต่อท้ายหลักสุดท้ายของจำนวนอย่างน้อยหนึ่งจำนวน อาจทำให้สดมภ์เรียงลำดับเป็นข้อความ (อักษรเลข) โดยปริยาย เช่น 1 12 2 27 289 317 4 5 ... สามารถเลี่ยงได้โดยประกาศ sort type ดังนี้ ! data-sort-type="number"|Elev. (ft) แทน ! Elev. (ft)

**ชนิดข้อมูลโดยปริยายของสดมภ์**
หากคุณไม่ระบุ data-sort-type ภาวะการเรียงลำดับ (ชนิดข้อมูลซึ่งนอกเหนือจากตัวเลือก "น้อยไปมาก" หรือ "มากไปน้อย" จะเป็นตัวกำหนดลำดับการเรียง) ดังนี้- วันที่ (ดูด้านล่าง)
** เกณฑ์: ส่วนย่อยไม่ว่างแรกอยู่ในรูป "DD-MM-YYYY", "DD-MM-YY" หรือ "DD mmm YYYY"
** อันดับ: ค่าตัวเลขของ YYYYMMDD; สายอักขระ DDsMMsYYYY ที่ยาว 10 อักขระ (หากอักขระที่อยู่ในตำแหน่ง s มีค่าเท่ากันและเป็นตัวคั่น '/' หรือ '-') มีการจัดตำแหน่งเป็น YYYYMMDD, สายอักขระ DDsMMsYY ที่ยาว 8 อักขระ (หากอักขระที่ s มีค่าเท่ากันหรือเป็นตัวคั่น '/' หรือ '-') จัดเป็น 19YYMMDD ถ้า YY ≥ 50 และ 20YYMMDD ในกรณีอื่น และสายอักขระ "DD mmm YYYY" โดย mmm เป็นชื่อเดือน (แบบย่อ)- isoDate (ISO 8601)
** เกณฑ์: รูปแบบ "± YYYY-MM-DD" ที่มีเลขโดด 1-4 หลักสำหรับปี "YYYY" ตั้งแต่ -9999 ถึง 9999, เดือนใช้เลขโดดเท่านั้น, รูปแบบ "± YYYY-MM-DDThh:mm:ss.sss±TH:TM" โดยที่ "hh" เป็นชั่วโมง, "mm" เป็นนาที, "ss.sss" เป็นวินาที และออฟเซตเขตเวลา "TH:TM" ค่าด้านขวาไม่ต้องใส่ก็ได้
** อันดับ: ตัวเลข โดยเวลาในหน่วยมิลลิวินาทีตั้งแต่วันที่ 1 มกราคม 1970 UTC- "currency" (ภาวะนี้อาจมีประโยชน์สำหรับข้อมูลอื่นด้วย)
** เกณฑ์: ส่วนย่อยไม่ว่างแรกที่ขึ้นต้นด้วย $, £, € หรือ ¥
** อันดับ: ตัวเลข โดยไม่สนใจสัญลักษณ์สกลุเงิน และอักษรทั่วไปและเครื่องหมายจุลภาค แต่ไม่รวมช่องว่าง สังเกตว่าไม่สามารถใช้สัญกรณ์วิทยาศาสตร์ได้เนื่องจาก e และ E ถูกลบออก- ตัวเลข
** เกณฑ์: ส่วนย่อยไม่ว่างแรกที่ประกอบด้วยเลขโดด จุด เครื่องหมายจุลภาค ช่องว่าง "+", "-" อาจตามด้วย "e" หรือ "E" และสายอักขระที่ประกอบด้วย "+", "-", เลขโดด
** อันดับ: หลังลบเครื่องหมายจุลภาคและช่องว่าง (ถ้ามี) แล้ว หากสาขอักขระขึ้นต้นด้วยจำนวน อันดับจะเป็นตัวเลขตามจำนวนแรกในสายอักขระ (ใช้  parseFloat) ถือเป็นศูนย์หากว่าง ในกรณีอื่น (parseFloat กลับคืน NaN) ส่วนย่อยดังกล่าวจะจัดตำแหน่งเหมือนกับ -∞- สายอักขระ
** เกณฑ์: กรณีอื่นทั้งหมด; เพื่อหลีกเลี่ยงภาวะอื่น ให้ขึ้นด้นด้วย "&" ซ่อน; สามารถทำได้อย่างสะดวกด้วย m:แม่แบบ:sms (backlinks edit) ซึ่งยังเปิดให้เขียนข้อความซ่อนเพิ่มเติม เป็นแป้นการเรียงลำดับ ขณะที่แม่แบบคล้ายกันข้างต้นมีการเรียก ณ ท้ายส่วนย่อยตาราง แต่จะเรียกตารางนี้ตั้งแต่เริ่ม
** อันดับ: หลังการแปลงอักษรใหญ่เป็นอักษรเล็ก อันดับคือ แอสกี รายการบางส่วนแสดงอันดับ ! "# $% & '() * +, -. / 09:; ? @ \ ^ _ 'az 
จะได้
(ทำให้เรียงลำดับตามนามสกุล ไม่ใช่ชื่อ)
วิธีนี้มีประโยชน์ เช่น เมื่อเรียงลำดับยศทหารตามลำดับอาวุโส
มาร์กอัพวิกิ

หากคุณมีแถวที่มี colspan การรักษาให้บางแถวอยู่ติดกันอาจทำได้ยากเล็กน้อย คุณสามารถใช้ class="expand-child" ในแถวได้ จะทำให้แถวนั้นอยู่ใต้แถวที่อยู่ด้านบนในรหัสตารางเสมอ ไม่ว่าแถวนั้นมีการเรียงลำดับอย่างไรในตาราง

**ปัญหาการเรียงลำดับตัวเลข**
ข้อความหยุดการเรียงลำดับเชิงตัวเลขโดยปริยายหากข้อความอยู่ก่อนจำนวน ข้อความตามหลังจำนวนบางทีหยุดการเรียงลำดับเชิงตัวเลขตั้งต้น ดูสารสนเทศเพิ่มเติมด้านล่าง
อ้างอิง  ตามหลังจำนวนไม่หยุดการเรียงลำดับตัวเลขโดยปริยายอีกต่อไป
ใส่ data-sort-type=number ในหัวเรื่องสดมภ์ เพื่อให้สิ่งต่อไปนี้ไม่หยุดการเรียงลำดับเชิงตัวเลขของสดมภ์นั้น- แม่แบบ N/A- ข้อความนำหน้าตัวเลข- เครื่องหมายแดช (dash)
เครื่องหมายแดชหลังจำนวนหยุดการเรียงลำดับเชิงตัวเลขของสดมภ์ ฉะนั้นพิสัย (30-40) จะหยุดการเรียงลำดับเชิงตัวเลข ลองคลิกปุ่มเรียงลำดับในตารางแรกด้านขวามือ และดูว่าการเรียงลำดับใช้การไม่ได้ ทางแก้หนึ่งคือใช้ 2 สดมภ์สำหรับพิสัย การใช้สองสดมภ์ทำให้เรียงลำดับได้ทั้งพิสัยต่ำสุดและพิสัยสูงสุด
อีกทางเลือกหนึ่งคือการใช้หนึ่งสดมภ์และเพิ่ม data-sort-type=numberในหัวเรื่องสดมภ์ คลิกปุ่มเรียงลำดับในตารางขวาสุด สำหรับสารสนเทศเพิ่มเติมดู meta:Help:Sorting#Sort modes และส่วนเกี่ยวกับการบังคับภาวะการเรียงลำดับสำหรับสดมภ์
เครื่องหมายบวก (+) ที่อยู่หน้าตัวเลข ไม่ หยุดการเรียงลำดับตัวเลขของสดมภ์ เครื่องหมายบวกในเซลล์ว่างอื่น ๆ สามารถหยุดการเรียงลำดับตัวเลขของสดมภ์ได้หากเซลล์ไม่ว่างแรกที่อยู่ในสดมภ์นั้นมีเฉพาะเครื่องหมายบวก เครื่องหมายบวกตามหลังจำนวนสามารถหยุดการเรียงลำดับตัวเลขได้หากเซลล์ไม่ว่างแรกที่อยู่ในสดมภ์นั้นประกอบด้วยตัวเลขตามด้วยเครื่องหมายบวก
"c." (circa หมายถึง "โดยประมาณ") มักพบในสดมภ์จำนวน จำเป็นต้องใส่ไว้หลังจำนวนเพื่อให้การเรียงลำดับตัวเลขใช้การได้ หรือจะย้ายไปอีกสดมภ์หนึ่งก็ได้ การเพิ่ม data-sort-type=number ไว้ที่หัวเรื่องของสดมภ์ไม่อนุญาตให้ใช้ c. นำหน้าตัวเลข
เลขศูนย์นำไม่จำเป็นสำหรับการเรียงลำดับตัวเลขของสดมภ์ หากดูเหมือนจำเป็น แสดงว่าสดมภ์กำลังเรียงลำดับตามพยัญชนะ ให้ตรวจสอบเซลล์ที่มีอักขระอย่างอื่นนอกจากตัวเลข และแก้ไขเซลล์เหล่านั้นตามกฎข้างต้น

**ปัญหาการเรียงลำดับวันที่**

**เฉพาะปี**
การเรียงลำดับปีของสดมภ์ใช้การได้ตราบเท่าที่ไม่มีข้อความในสิ่งแรกในเซล์ในสดมภ์นั้น ปีต้องอยู่อันดับแรก การใส่ data-sort-type=date ในส่วนหัวสดมภ์ไม่เปลี่ยนแปลงกฎนี้
สามารถใส่ข้อความ ตามหลัง ปีในเซลล์ได้ ตัวอย่างเช่น- "FY" (ปีงบประมาณ) หลังเลขปี- การอ้างอิง- ถ้าจะใช้ให้ใช้ "c." (แปลว่า โดยประมาณ) หลังเลขปีด้วย- แดชทุกชนิดในเซลล์ว่างหยุดการเรียงลำดับปีของสดมภ์นั้น แต่สามารถใส่หลังเลขปีได้
แม่แบบ N/A ในเซลล์ในสดมภ์ปีไม่หยุดการเรียงลำดับปีของสดมภ์นั้น ซึ่งต่างจากการเรียงลำดับตัวเลขข้างต้น
หากมีปัญหากับการเรียงลำดับปี ให้ตรวจสอบทุกเซลล์ในสดมภ์นั้นว่ามีข้อความหรือเครื่องหมายแดช (ทุกชนิด) ว่าขึ้นต้นเซลล์นั้นหรือไม่ ให้ลบข้อความหรือเครื่องหมายแดชนั้น แล้วสดมภ์ควรจะเรียงลำดับอย่างถูกต้อง

**ปีและเดือน**
การเรียงลำดับวันที่ใช้ไม่ได้กับสดมภ์ที่มีปีและเดือนเท่านั้น (คือไม่มีวันที่) การเพิ่ม data-sort-type=date หรือ data-sort-type=isoDate ที่หัวเรื่องสดมภ์ไม่ช่วย ลองคลิกหัวเรื่องสดมภ์หลายครั้งในตารางด้านล่างได้ หมายเหตุว่าสดมภ์ที่มีหัวเรื่อง data-sort-type=isoDate อาจเรียงลำดับอย่างถูกต้องในบางเบราว์เซอร์ แต่เชื่อถือไม่ได้
ปีและเดือนในรูปแบบตัวเลข (YYYY-MM) ใช้ได้กับ data-sort-type=isoDate (ดูส่วนที่เกี่ยวข้องด้านล่าง)

**วันที่ เดือนและปี**
การเรียงลำดับทำงานอย่างถูกต้องในตารางทั้งหมดด้านล่าง ถ้าใส่ปีก่อน ค.ศ. 100 (เช่น ค.ศ. 99) จะหยุดการเรียงลำดับ หากเลขสำหรับวันที่หายไป การเรียงลำดับก็หยุดเช่นกัน

**ก่อนปี ค.ศ. 100 (รูปแบบวันที่ทุกแบบ)**
สามารถเรียงลำดับได้ผ่าน data-sort-value ซ่อนโดยใช้วันที่ไอเอสโอ ร่วมกับ data-sort-type=isoDate 
หมายเหตุ: ข้อความวิกิเรียงลำดับเหมือนกันสำหรับ 2 ตารางด้านล่าง สามารถแสดงรูปแบบวันที่ใดต่อผู้อ่านก็ได้ 
ตารางด้านล่างใช้ค่า isoDate เดียวกันสำหรับ data-sort-value เช่นเดียวกับตารางด้านบน แต่มีการใช้รูปแบบวันที่หลายแบบสำหรับแสดงวันที่ต่อผู้อ่าน

**ปี เดือน วันที่ (ใช้ตัวเลข) วันที่ไอเอสโอ**
ดู: วันที่ไอเอสโอ 
"± YYYY-MM-DD" โดยมีเลขโดด 1 ถึง 4 หลักสำหรับปี "YYYY" ตั้งแต่ -9999 ถึง 9999 หากใช้เดือนต้องใช้เลขโดดสองหลัก การเรียงลำดับจะหยุดทำงานถ้าใช้เลขโดดหลักเดียวโดยไม่มีเลขศูนย์ให้ครบสองหลัก ส่วนวันที่สามารถใช้เลขโดดหลักเดียวหรือสองหลักก็ได้ สามารถใส่ข้อความหรือเครื่องหมายก่อนหรือตามวันที่ได้ พึงระลึกว่าควรเว้นช่องว่างในข้อความวิกิก่อนเลขปีสำหรับปีที่เป็นจำนวนลบ
การเรียงลำดับทำงานได้ดีที่สุดเมื่อเพิ่ม data-sort-type=isoDate ในหัวเรื่องสดมภ์ สามารถเพิ่ม BC หรือ BCE (ก่อนปี ค.ศ.) ได้เช่นกัน ทดสอบการใส่ข้อความอื่นก่อนและหลังวันที่ดังกล่าวได้

**ม่แบบ Dts วันที่และเดือน รูปแบบวันที่อื่นอีกมากมาย**
ตารางตัวอย่างเหล่านี้ใช้แม่แบบ Dts ทั้งหมดเรียงลำดับอย่างถูกต้อง ดูข้อความวิกิ ("แก้ไข") ข้อความวิกิสำหรับหน่วยแรกในตารางแต่ละตารางแสดงในส่วนหัวตาราง
หมายเหตุ: ไม่มีสดมภ์ตารางใดที่ใช้ตัวดัดแปร data-sort-type= บางทีการใช้ data-sort-type= จะหยุดการเรียงลำดับ
แม่แบบ Dts กับรูปแบบวันที่ได้หลายรูปแบบ ดู แม่แบบ:Dts สำหรับตัวเลือกอื่น

**ตัวอย่างการตรวจจับชนิดข้อมูลอัตโนมัติ**
สคริปต์เห็นสิ่งที่บรรจุในเซลล์ในแถวข้อมูล 5 แถวแรก ภาวะการเรียงลำดับจะกลายเป็นตัวเลข หากเซลล์แรก ๆ มีเฉพาะตัวเลข (เครื่องหมายจุลภาคและจุดที่ใช้ในการจัดรูปแบบตัวเลขถือเป็นตัวเลขด้วย) ลำดับการเรียงลำดับจะทำงานอย่างถูกต้องแม้เซลล์อื่นมีข้อความอยู่หลังตัวเลข (เช่น "80 โดยประมาณ") เซลล์ว่างถือเป็น "ศูนย์" เมื่อเรียงลำดับตัวเลข
ตัวอย่างที่มี "a" ทำให้ได้การเรียงลำดับตามอักษร ตัวอย่างที่มี "e" ก็เช่นกัน ข้อมูลนั้นไม่รับรู้เป็นจำนวนในรูปแบบวิทยาศาสตร์
ตัวอย่างแรกแสดงให้เห็นว่าข้อความจัดตำแหน่งที่ศูนย์ และไม่อนุญาตให้ใช้ e3 สำหรับ 1,000 ให้ใช้ 1e3 แทน นอกจากนี้ยังแสดงให้เห็นว่าควรใช้ "-" แทน "−"
ตัวอย่างที่สองแสดงว่านิพจน์ไม่ได้เรียงตามค่าที่ประเมิน แต่ตามจำนวนแรก
ตัวอย่างที่สามแสดงให้เห็นว่าภาวะการเรียงลำดับตัวเลขยอมรับร้อยละ แต่จะละเลยภาวะการเรียงลำดับแท้จริง ฉะนั้นถ้าสดมภ์ใดมีร้อยละ จำนวนทั้งหมดจะต้องเขียนเป็นร้อยละด้วย
ตัวอย่างที่สี่แสดงอีกครั้งว่า "c. 12" เรียงลำดับที่ 0 ซึ่งตรงข้ามกับ 12 ที่มีข้อความตามหลัง ซึ่งเรียงลำดับที่ 12 กรณีที่ส่วนย่อยดังกล่าวอยู่บนสุดของสดมภ์ จะทำให้เป็นภาวะการเรียงลำดับตามตัวอักษร

**สีพื้นหลังในหัวเรื่องเรียงลำดับได้**
สีพื้นหลังในหัวเรื่องอาจทำให้สดมภ์นั้นสูญเสียปุ่มเรียงลำดับ ดู  ข้อผิดพลาด 31755 ตัวอย่างเช่น
ใช้ style="background-color:...;" เพื่อให้แสดงสี วิธีที่ถูกต้องเป็นดังนี้
ทำให้ได้ตารางเรียงลำดับได้ดังนี้
หมวดหมู่:ตารางวิกิพีเดีย