i have Four table
tblUser(UserID PK,name)
tblPackage (PackageID pk, PackageName)
tblPayment(PaymentID Pk,UserID Fk, PackageID FK,Payingdate,PaidAmount,RemainingBalance)
tblsubscription(subID pk, userID, packageID,PackageExpireDate, PackStartDate)
Here suppose in my tblpaymet i am adding the value
(1,1,1,2016-11-2,2000,8000),
(2,1,1,2016-11-3,3000,7000),
(3,1,1,2016-11-4,2000,8000)
and if same user take another package
(4,1,2,2016-11-1,5000,7000),
(5,1,2,2016-11-2,5000,7000),
(6,1,2,2016-11-3,5000,7000),
in this both statement i want to retrive the last record of each user by differentiate them packageID means in my example i want to retrive only paymentid(3,6) but using this query i am getting all record. so please help me to get the last record of each user
What I have tried:
select users.UserID, users.Name, users.Contact, users.photos, pay.PaymentID, pay.Paying_date, pay.Payble, pay.Discount, pay.Total_Paid,p ay.Balance_Remain, pay.Payment_Mode, pay.Payment_Type, pay.Payment_Describtion, pack.PackageID, pack.Package_Name, pack.Package_Duration, pack.Package_Amount, sub.Package_Expire_Date, sub.Package_StartDate from tblUser as users
inner join tblPayment as pay
on users.UserID=pay.UserId
left outer join tblPackages as pack
on pack.PackageID = pay.PackageId
inner join tblSubscription as sub
on users.UserID = sub.UID