• 2 رای - 5 میانگین
  • 1
  • 2
  • 3
  • 4
  • 5
نظر در مورد قسمتی از کوئری mybb
#1
سلام خدمت همه بچه ها
من امروز داشتم کدهای mybb رو نگاه می کردم به یه قسمت برخوردم و اون این بود
کد پی‌اچ‌پی:
$query $db->query("
        SELECT u.*
        FROM "
.TABLE_PREFIX."users u
        LEFT JOIN "
.TABLE_PREFIX."usergroups g ON (g.gid=u.usergroup)
        WHERE u.lastactive > 
$stime
        ORDER BY u.lastactive DESC
    "
); 
برام سوال پیش اومده که چرا JOIN انجام شده اما از هیچ فیلد جدول JOIN شده استفاده نشده؟ به نظرتون جدول بی خودتی JOIN نشده؟
  پاسخ
تشکر شده توسط :
#2
حق با شماست ، باز اگه right join میکرد یه چیزی!
  پاسخ
تشکر شده توسط :
#3
فکر کنم چون LEFT JOIN هستش
اگر اینا g.gid=u.usergroup با هم ست نشن
مقدار خالی برگردونه . اینطور نیست ؟
  پاسخ
تشکر شده توسط :
#4
اگر right join بود گفته شما صحیح بود ولی الان left join هست و مقدار خالی بر نمی گرده
  پاسخ
تشکر شده توسط :
#5
چون‌ left join هست‌ اگر مقدار در جدولی که join شده‌ وجود نداشته باشه رکورد برگردونده میشه و به جای رکوردهایی که در جدول join شده‌ وجود نداره NULL قرار می گیره.
  پاسخ
تشکر شده توسط : k2-4u
#6
منظور من هم همین بود Big Grin
  پاسخ
تشکر شده توسط :


پرش به انجمن:


کاربران در حال بازدید این موضوع: 1 مهمان