PDA

View Full Version : بیرون کشیدن اطلاعات از دو جدول



mortezaz2000
جمعه 24 مرداد 1393, 16:49 عصر
سلام
دوستان من دوتا تیبل دارم

tb1 برای کاربران :
userid
username

tbl2 برای پرداخت کاربران :
userid
price
status

شرط پرداخت موفق در tbl2 مقدار 0 در status هست
حالا میخوام لیست کسانی که در tbl2 وجود ندارند و یا پرداخت موفق نداشته اند را از tbl1 بیرون بیارم

select * from tbl1,(select userid from tbl2 where status=0
group by userid) as tbltemp
where tbl1.userid <> tbltemp.userid
group by tbl1.userid

مشکل هم فکر کنم در علامت <> نقیض باشه
این رو تست میکنم اشتباه در میاد لطفا راهنمایی کنید
با تشکر

mortezaz2000
جمعه 24 مرداد 1393, 23:47 عصر
کسی از دوستان نمیدونه؟؟؟

ham3d1988
شنبه 25 مرداد 1393, 12:46 عصر
سلام به جای علامت <> از not in استفاده کنید درست میشه


select * from tbl1 where userID not in (select UserID from tbl2 where tbl2.Status = 0)

mortezaz2000
شنبه 25 مرداد 1393, 16:06 عصر
ممنون از راهنماییتون درست شد

mortezaz2000
شنبه 25 مرداد 1393, 17:40 عصر
سلام
tb1 برای کاربران :
userid
username

tbl2 برای پرداخت کاربران :
payid
paydate
userid
price
status

شرط پرداخت موفق در tbl2 مقدار 0 در status هست
حالا میخوام آخرین پرداخت موفق کاربران به همراه مشخصاتشون را در بیارم

ham3d1988
یک شنبه 26 مرداد 1393, 15:21 عصر
سلام


select max(payid) ,paydate ,userid ,(select username from tbl1 where tbl1.userid=tbl2.userid) ,price from tbl2 group by userid having status=0

mortezaz2000
دوشنبه 27 مرداد 1393, 17:19 عصر
سلام
tb1 برای کاربران :
userid
username

tbl2 برای پرداخت کاربران :
payid
paydate
userid
price
status

tbl3 برای تعهدات کاربران :
id
date
status
userid
...
شرط پرداخت موفق در tbl2 مقدار 0 در status و تعهدات پرداخت نشده در tbl3 مقدار 0 در status هست
حالا میخوام مجموع پرداختی کسانی که تعهد پرداخت نشده دارند و تاریخ پرداخت آنها بین تاریخ تعهد تا به امروز را بیرون بیارم
ممنون میشم راهنمایی کنید.
خودم تا یه جاهاییشو درست میرم ولی ممکنه بعضی از کاربرن پرداختی نداشته باشند واسه همین نمیتونم userid را برگردونم یعنی مجموع پرداختی این کاربر 0 باید باشه