مرتب سازی درختی در mysql
با سلام
خیلی اوقات هست که ما نیاز به ایجاد سیستم پدر فرزندی داریم یعنی یک سری ایتم اصلی یا پدر داریم که هر کدوم یک سری ایتم فرعی یا فرزند دارن برای نمایش این سیستم روشهای مختلفی هست مثلا بعضی برنامه نویسها با استفاده از چند سلکت این کار رو انجام میدن و بعضی ها هم با یک سلکت و یک تابع بازگشتی این کار رو انجام میدن اما یکی از این روشهای بهینه استفاده از تابع COALESCE در خود mysql هست
مثلا ما جدولی با ستونهای زیر داریم
id,parent,name
کوئری ما به صورت زیر خواهد بود
select id,name from table order by COALESCE(parent,id),id
توجه:مقدار parent رکوردهای اصلی یا پدر را null در نظر میگیریم در غیر این صورت از تابع nullif برای تغییر مقدار parent به null استفاده میکنیم
مثال:اگر مقدار parent برای ایتم اصلی یا پدر ۰ در نظر بگیریم
select id,name from table order by COALESCE(nullif(parent,0),id),id
php,wordpress,python,jquery و دیگر هیچ
شاید امروز جواب خیلی از سؤالها را بتوان از AI گرفت، اما تولید مطالب تخصصی، تجربهمحور و عمیق هنوز به انگیزه نیاز دارد. این نظرات و بازخوردهای شماست که به ما نشان میدهد ادامه دادن این مسیر ارزشمند است.
دیدگاه شما چیست؟