MySQL ไม่รองรับการสืบค้นแบบเรียกซ้ำเช่นที่คุณต้องการ
สิ่งที่ฉันทำในขณะที่กลับมาเขียนขั้นตอนการจัดเก็บที่ให้รูปแบบการทำเช่นนั้น
ฉันจะให้ลิงค์ไปยังโพสต์ที่ผ่านมาของฉันแทนสิ่งนี้:
กล่าวโดยย่อคือขั้นตอนการจัดเก็บที่ฉันทำจะทำการสำรวจต้นไม้ล่วงหน้าโดยใช้การประมวลผลคิว
GetParentIDByID
GetAncestry
GetFamilyTree
ผู้ปกครองถึงเด็กทุกคน (เช่นขั้นตอนการเก็บ GetFamilyTree)
- STEP01) เริ่มด้วย a
parent_id
ในคิว
- ขั้นตอนที่ 02) ทำสำเนาถัดไป
parent_id
เป็นปัจจุบัน
- STEP03) จัดคิว
id
ค่าทั้งหมดที่มีอยู่ในปัจจุบันparent_id
- STEP04) พิมพ์หรือรวบรวมความคิดเห็น
- STEP05) หากคิวไม่ว่างให้ข้ามไป
STEP02
- ขั้นตอนที่ 06) เสร็จแล้ว !!!
เด็กกับผู้ปกครองทั้งหมด (เช่นขั้นตอนการจัดเก็บ GetAncestry)
- STEP01) เริ่มด้วย
id
a ในคิว
- ขั้นตอนที่ 02) ทำสำเนาถัดไป
id
เป็นปัจจุบัน
- STEP03) เข้าคิว
parent_id
ค่าปัจจุบันid
- STEP04) พิมพ์หรือรวบรวมความคิดเห็น
- STEP05) หากคิวไม่ว่างให้ข้ามไป
STEP02
- ขั้นตอนที่ 06) เสร็จแล้ว !!!
โปรดดูขั้นตอนการจัดเก็บในโพสต์อื่น ๆ ของฉันเพื่อดูการใช้งาน
ให้มันลอง !!!