View Full Version : کمک در نوشتن یه دستور sql
mohsen_borzooei
شنبه 27 آبان 1385, 15:31 عصر
با سلام
سه تا جدول داریم
1- جدول vazeyat با فیلدهای id, khon,nabz
2- جدول user_info با فیلدهای pno,lname,fname,addr
3-جدول use _date با فیلدهای id,pno,date
حال صورت سوال : لیست افراد و تاریخ(date) را که فشارخون(khon) انها بیشتر از 50 باشد ؟
جدول vazeyat با فیلد id به use _date مرتبط و جدول use _date با فیلد pno بهuser_info مرتبط است .
رشته sql رو در دلفی می خوام استفاده کنم .
ممنونم .
MNosouhi
یک شنبه 28 آبان 1385, 00:14 صبح
تستش نکردم ، اما فکر کنم یه همچین چیزی بشه ، اگه اشکالی داشت خودت اصلاحش کن :
select user_info.pno,lname,fname,date,khon
from vazeyat,user_info,use_date
where
user_info.pno=user_date.pno and user_date.id=vazeyat.id
group by user_info.pno,lname,fname,date,khon
having khon>50
mohsen_borzooei
یک شنبه 28 آبان 1385, 07:24 صبح
سلام پسر خوب
من هرکاریش کردم نتونستم ردیفش کنم هی خطا می داد . فیلدها رو نمی شناخت اگه محبتی کنی و از حالت شبه کدی به کد اصلی درش بیاری که خیلی ممنونت می شم .
منتظرم .
ممنون
MNosouhi
یک شنبه 28 آبان 1385, 09:36 صبح
برنامت رو بزار ، یا حداقل جداولت رو آپلود کن.
mohsen_borzooei
یک شنبه 28 آبان 1385, 09:48 صبح
سلام
کجای توضیحات مبهمه بگو تا بیشتر توضیح بد م برنامه و یا حتی دیتا بیس بعلت حجم بسیار بالا قابل اپلود شدن نیست پوزش منو بپذیر.
از اینکه پیگیر مشکل من هستی بسیار ممنونم
منتظرم .
salman_arak
یک شنبه 28 آبان 1385, 12:29 عصر
SQL.Clear;
sql.Add('select a.pno,a.fname,a.lname,c.khon from( vazeyat c inner join user_date b'+
' on c.id=b.id) inner join user_info a on a.pno=b.pno where c.khon >' +inttostr('50'));
open;
این کد مشکلتو حل می کنه .:چشمک:
MNosouhi
یک شنبه 28 آبان 1385, 13:10 عصر
همون پست اولم رو تصحیح کردم ، کدها با analyzer sql هم تست شده.
اما دوست عزیز ، سعی کن از کلمات رزرو شده sql برای نامگذاری استفاده نکنید (مانند Date و Use .البته به صورت ترکیب با کلمات دیگر اشکالی ندارد.)
vBulletin® v4.2.5, Copyright ©2000-1404, Jelsoft Enterprises Ltd.