۰
subtitle
ارسال: #۱
  
پرسوجوی SQLبا دستور EXISTS
مهمان عزیز شما قادر به مشاهده پیوندهای انجمن مانشت نمیباشید. جهت مشاهده پیوندها ثبت نام کنید.
لطفا مفصل توضیح بفرمایید
۰
ارسال: #۲
  
RE: پرسوجوی SQLبا دستور EXISTS
اونجوری که خودم متوجه این سوال شدم رو میگم شاید کمکتون کنه.....
اول صورت سوال رو یکم توضیح میدم گفته که "نام مشتریان که در همه شعبه های شهر تهران حساب بانکی دارند." خب اینجا خواسته بررسی کنه که یکسری رکورد در مجموعه جواب وجودا دارند یا خیر.
خاصیت زیر مجموعه ایی استفاده میکنه یعنی اینکه نام تمام شعبه ها تهران مجموعه اصلی و نام مشتریان مجموعه کوچکتری است که درون نام تمام شعبه ها وجود داره.
پس تا اینجا فهمیدیم باید دو تا دستور select بنویسیم برای بخش شرط و توی بخش select اصلی چون باید اسم ها متمایز باشند دستور Distanct رو مینویسیم
یه نکته وجود داره که همون صفحه قبل توضیح داده که برای نوشتن این دستور میتونیم هم بصورت مستقیم از Contains استفاده کنیم و روش دوم استفاده از exists و except هست اثبات این قضیه مربوط به مجموعه ها میشه (!)
[tex]Y\subseteq X\equiv X\: Contains\: Y\: \equiv\: NOTExists(Y\: Except\: X)[/tex]
پس باید توی بخش شرط اون select تو در تو رو به این صورت بنویسیم که
not exists
(زیر مجموعه بزرگتر = نام تمام شعبه های تهران
except
زیر مجموعه کوچیکه = نام تمام افرادی که حساب دارند
)
اول صورت سوال رو یکم توضیح میدم گفته که "نام مشتریان که در همه شعبه های شهر تهران حساب بانکی دارند." خب اینجا خواسته بررسی کنه که یکسری رکورد در مجموعه جواب وجودا دارند یا خیر.
خاصیت زیر مجموعه ایی استفاده میکنه یعنی اینکه نام تمام شعبه ها تهران مجموعه اصلی و نام مشتریان مجموعه کوچکتری است که درون نام تمام شعبه ها وجود داره.
پس تا اینجا فهمیدیم باید دو تا دستور select بنویسیم برای بخش شرط و توی بخش select اصلی چون باید اسم ها متمایز باشند دستور Distanct رو مینویسیم
یه نکته وجود داره که همون صفحه قبل توضیح داده که برای نوشتن این دستور میتونیم هم بصورت مستقیم از Contains استفاده کنیم و روش دوم استفاده از exists و except هست اثبات این قضیه مربوط به مجموعه ها میشه (!)
[tex]Y\subseteq X\equiv X\: Contains\: Y\: \equiv\: NOTExists(Y\: Except\: X)[/tex]
پس باید توی بخش شرط اون select تو در تو رو به این صورت بنویسیم که
not exists
(زیر مجموعه بزرگتر = نام تمام شعبه های تهران
except
زیر مجموعه کوچیکه = نام تمام افرادی که حساب دارند
)
۰
ارسال: #۳
  
RE: پرسوجوی SQLبا دستور EXISTS
عالی بود نگاه کردم ۲تا از تست ها هم همینجوری حل میشدن
Can I see some ID?
Feeling left out?
نگران نباش، فقط روی این لینک برای ثبت نام کلیک کن. رمزت رو فراموش کردی؟ اینجا به یادت میاریم! close