ฉันมีตาราง SQL ดังนี้:
| SomeID | OtherID | Data
+----------------+-------------+-------------------
| abcdef-..... | cdef123-... | 18,20,22
| abcdef-..... | 4554a24-... | 17,19
| 987654-..... | 12324a2-... | 13,19,20
มีแบบสอบถามที่ฉันสามารถดำเนินการแบบสอบถามเช่นSELECT OtherID, SplitData WHERE SomeID = 'abcdef-.......'
ที่ส่งกลับแต่ละแถวเช่นนี้
| OtherID | SplitData
+-------------+-------------------
| cdef123-... | 18
| cdef123-... | 20
| cdef123-... | 22
| 4554a24-... | 17
| 4554a24-... | 19
โดยทั่วไปแบ่งข้อมูลของฉันที่เครื่องหมายจุลภาคเป็นแต่ละแถวหรือไม่
ฉันทราบว่าการจัดเก็บcomma-separated
สตริงลงในฐานข้อมูลเชิงสัมพันธ์นั้นเป็นใบ้ แต่กรณีการใช้งานปกติในแอพพลิเคชั่นสำหรับผู้ใช้ทั่วไปนั้นมีประโยชน์จริง ๆ
ฉันไม่ต้องการแยกในแอปพลิเคชันตามที่ฉันต้องการเพจดังนั้นฉันต้องการสำรวจตัวเลือกก่อนทำการ refactoring แอพทั้งหมด
มันคือSQL Server 2008
(ไม่ใช่ -R2)