ฉันมีสองโต๊ะ:
TableA
------
ID,
Name
TableB
------
ID,
SomeColumn,
TableA_ID (FK for TableA)
ความสัมพันธ์เป็นหนึ่งแถวTableA
- หลายแถวTableB
หลาย
ตอนนี้ฉันต้องการเห็นผลลัพธ์ดังนี้:
ID Name SomeColumn
1. ABC X, Y, Z (these are three different rows)
2. MNO R, S
สิ่งนี้จะไม่ทำงาน (ผลลัพธ์หลายรายการในแบบสอบถามย่อย):
SELECT ID,
Name,
(SELECT SomeColumn FROM TableB WHERE F_ID=TableA.ID)
FROM TableA
นี่เป็นปัญหาเล็กน้อยหากฉันดำเนินการกับฝั่งไคลเอ็นต์ แต่นี้จะหมายความว่าฉันจะมีการเรียกใช้คำสั่ง X ในทุกหน้าที่ X TableA
คือจำนวนของผลของการ
โปรดทราบว่าฉันไม่สามารถทำ GROUP BY หรือสิ่งที่คล้ายกันได้เนื่องจากจะส่งคืนผลลัพธ์หลายรายการสำหรับแถวของTableA
.
ฉันไม่แน่ใจว่า UDF ที่ใช้ COALESCE หรือสิ่งที่คล้ายกันอาจได้ผลหรือไม่?