ย่อสตริงที่ยาวเกินไป
คอลัมน์ description ในตาราง evanston311 อาจมีข้อความยาวมาก สามารถตรวจสอบความยาวของสตริงได้ด้วยฟังก์ชัน length()
หากต้องการแสดงผลหรือดูข้อมูลอย่างรวดเร็ว อาจเลือกแสดงเพียงไม่กี่อักขระแรก โดยใช้ฟังก์ชัน left() เพื่อดึงอักขระจำนวนที่ระบุจากต้นของแต่ละค่า
เพื่อบอกให้ทราบว่ายังมีข้อมูลอีก ให้เชื่อมต่อ '...' ต่อท้าย description ที่ถูกย่อ โดยใช้คำสั่ง CASE WHEN เพื่อเพิ่ม '...' เฉพาะเมื่อความยาวของสตริงมากกว่า 50 อักขระ
เลือก 50 อักขระแรกของ description เมื่อ description ขึ้นต้นด้วย คำว่า "I"
แบบฝึกหัดนี้เป็นส่วนหนึ่งของหลักสูตร
Exploratory Data Analysis ใน SQL
คำแนะนำการฝึกหัด
เลือก 50 อักขระแรกของ
descriptionพร้อมเชื่อมต่อ'...'ต่อท้าย ในกรณีที่length()ของdescriptionมากกว่า 50 อักขระ มิฉะนั้นให้เลือกdescriptionตามเดิมเลือกเฉพาะ description ที่ขึ้นต้นด้วย คำว่า 'I' เท่านั้น ไม่ใช่แค่ ตัวอักษร 'I'
- ตัวอย่างเช่น ต้องการเลือก "I like using SQL!" แต่ไม่ต้องการเลือก "In this course we use SQL!"
แบบฝึกหัดเชิงโต้ตอบแบบลงมือทำ
ลองทำแบบฝึกหัดนี้โดยเติมโค้ดตัวอย่างนี้ให้สมบูรณ์
-- Select the first 50 chars when length is greater than 50
SELECT CASE WHEN length(___) ___ ___
THEN ___(___, ___) || ___
-- otherwise just select description
ELSE description
END
FROM evanston311
-- limit to descriptions that start with the word I
WHERE ___ LIKE ___
ORDER BY description;