خوب در دیتابیس یه سری از روابط بهتره که به صورت درختی باشند مثلا مثل کشور شهر استان و …
معمولا توی یک جدول همه ی این دیتاها ثبت میشه
اینجا میشه uni میشه root و یه سری لایه میانی داریم و …
از این مدل در دیتابیس چارت سازمانی استفاده میشه
دسته بندی محصولات
در بخش سومی که گذاشتیم null برای iran قسمتی هستش که میایم parent code رو میزاریم به این معنی که این جد همه است و ما داریم از کشور شروع میکنیم
حالا میخوایم چیزی رو درست کنیم وقتی که مثلا رفتیم روی شیراز بهمون کل مسیر رو نشون بده یعنی ایران فارس شیراز
خوب ما بیاید از CTE بازگشتی استفاده کنیم چرا که باید توی توی دیتامون بریم و itirate کنیم
توی sql server فقط میشه تا یک لایه بالا تر رو itirate کنیم یعنی این که وقتی که شیراز رو میاریم فقط به استانش که یه سطح بالاتره که میشه فارس دسترسی داریم
معمولا به CTE های بازگشتی میگن tree
باید توی اولین پرانتز بیایم کوئری بنویسیم که تمامی رکوردهایی که root هستش رو پیدا کنه و پدری بالا سرش نیست و جده خودش و برای پیدا کردنش باید بیام چک کنیم که کدوم یکی parent code اش null هستش
به اون هایی که سره شاخه ها هستند و هیچ فرزندی ندارند میگن leaf و اون هایی که اون وسط هستند میشه intermediate
تایم : 31 قسمت اول از روی سرور