จัดรูปแบบ SQL
ทำให้ query ยาว ๆ อ่านง่ายขึ้น เลือกได้ว่าจะใช้ไวยากรณ์ของฐานข้อมูลตัวไหน
ผลลัพธ์จะแสดงที่นี่จัดรูปแบบในเบราว์เซอร์ของคุณทั้งหมด คำสั่ง SQL ไม่ถูกส่งขึ้นเซิร์ฟเวอร์
เกี่ยวกับเครื่องมือนี้
เครื่องมือ จัดรูปแบบ SQL เปลี่ยน query ที่เขียนติดกันเป็นพืดให้กลายเป็นคำสั่งที่มีการเยื้องชัดเจน อ่านแล้วเห็นทันทีว่าส่วนไหนคือเงื่อนไข ส่วนไหนคือการ JOIN และ subquery ซ้อนอยู่กี่ชั้น
สถานการณ์ที่ใช้บ่อยคือตอนต้อง อ่าน query ที่คนอื่นเขียน หรือ query ที่หลุดออกมาจาก log ของแอปพลิเคชัน ซึ่งมักถูกรวมเป็นบรรทัดเดียวยาวหลายร้อยตัวอักษร การจัดรูปแบบก่อนอ่านช่วยประหยัดเวลาได้มาก
สิ่งที่ควรใส่ใจคือ การเลือกชนิดฐานข้อมูล ให้ตรงกับที่ใช้จริง เพราะแต่ละเจ้าครอบชื่อคอลัมน์ต่างกัน — MySQL ใช้ backtick, SQL Server ใช้วงเล็บเหลี่ยม, PostgreSQL ใช้เครื่องหมายคำพูด ถ้าเลือกไม่ตรง ตัวจัดรูปแบบอาจตีความชื่อที่มีช่องว่างผิดไป
โหมดย่อเป็นบรรทัดเดียวมีไว้สำหรับตอนต้องเอา query กลับไปใส่ในโค้ดหรือช่องกรอกที่รับบรรทัดเดียว โดยจะลบคอมเมนต์ออก เพราะคอมเมนต์แบบ -- จะกลืนคำสั่งที่เหลือทั้งหมดเมื่อไม่มีการขึ้นบรรทัดใหม่
วิธีใช้งาน
- 1วางคำสั่ง SQL ที่ยาวหรืออ่านยากลงในช่องป้อนข้อมูล
- 2เลือกชนิดฐานข้อมูลที่ใช้จริง เช่น MySQL หรือ PostgreSQL
- 3เลือกว่าจะให้คำสั่งเป็นตัวพิมพ์ใหญ่ พิมพ์เล็ก หรือคงเดิม
- 4กดคัดลอกผลลัพธ์ หรือสลับไปโหมดย่อเพื่อรวมกลับเป็นบรรทัดเดียว
คำถามที่พบบ่อย
- ทำไมต้องเลือกชนิดฐานข้อมูล
- เพราะแต่ละเจ้าใช้วิธีครอบชื่อคอลัมน์ต่างกัน MySQL ใช้ backtick, SQL Server ใช้วงเล็บเหลี่ยม ส่วน PostgreSQL ใช้เครื่องหมายคำพูด ถ้าเลือกผิด ตัวจัดรูปแบบอาจตีความชื่อคอลัมน์ผิดและทำให้ผลลัพธ์เพี้ยน
- เครื่องมือนี้รันคำสั่ง SQL ของฉันไหม
- ไม่ เป็นการจัดรูปแบบข้อความล้วน ๆ ไม่มีการเชื่อมต่อฐานข้อมูลใด ๆ และคำสั่งไม่ถูกส่งออกจากเบราว์เซอร์
- โหมดย่อเป็นบรรทัดเดียวลบคอมเมนต์ทำไม
- เพราะเมื่อรวมทุกอย่างเป็นบรรทัดเดียว คอมเมนต์แบบ -- จะกลืนคำสั่งที่เหลือทั้งหมดจนใช้งานไม่ได้ การลบคอมเมนต์ออกจึงเป็นทางเดียวที่ทำให้ผลลัพธ์ยังรันได้
- ตรวจไวยากรณ์ SQL ให้ด้วยไหม
- ไม่ เครื่องมือนี้จัดรูปแบบอย่างเดียว ไม่ได้ตรวจว่าคำสั่งถูกต้องหรือตารางมีอยู่จริง ให้ทดสอบกับฐานข้อมูลจริงเสมอ
- รองรับ query ยาว ๆ ที่มี subquery ซ้อนกันไหม
- รองรับ ตัวจัดรูปแบบจะเยื้อง subquery, JOIN, CASE และ CTE ให้เห็นลำดับชั้นชัดเจน ซึ่งเป็นจุดที่ช่วยได้มากที่สุดเวลาต้องอ่าน query ที่คนอื่นเขียน