PDA

View Full Version : سوال: درخواست راهنمایی جهت جستجو در sqlite



barman.ar16
شنبه 14 مرداد 1396, 00:53 صبح
سلام به اساتید بزرگوار
من توی سی شارپ میخوام یه جستجو بزنم گیر کردم لطفا راهنمایی کنید
جدول من به این شکله :

145977

خب میخوام یه جستجو بزنم و بعد نتیجه رو بریزم توی یه دیتاگرید ویو به این شکل که از هر کد ملی فقط آخرین رکورد آورده بشه و یه شرط هم بنویسم و اون هم اینکه مانده مغایر با عدد 0 باشه یعنی در واقع بتونم کسانی که بدهکار هستن نشون داده بشه
خودم این رو نوشتم که بر اساس کد ملی گروپ شده یعنی هر کد ملی رو یکبار و اون هم آخریش رو نشون میده ولی یه مشکل داره اون هم اینکه رکوردی از کد ملی که مانده 0 هست رو ول میکنه و میره سراغ آخرین رکوردی که مانده غیر از 0 بوده من میخوام اگر کد ملی باشه که مانده صفر باشه اصلا نیاره و بره سراغ کد ملی هایی که مانده شون صفر نیست و اون ها رو هم گروپ کنه

select * from qest where mande != '0' group by melli

در نهایت میخوام نتیجه اینطوری بشه که کد ملی 3333 اصلا نشون داده نشه چون بدهکار نیست و کد ملی 2222 و کد ملی 1111 آخرین رکورد مربوط شون نشون داده بشه
ممنون

Mahmoud.Afrad
شنبه 14 مرداد 1396, 04:59 صبح
طراحی اشتباهی رو پیش گرفتید. باید یک جدول برای شهریه و یک جدول برای اقساط پرداختی داشته باشید. برای اینکه بدهکاران رو بدست بیارید کافیه از جدول اقساط مجموع اقساط رو بدست بیارید(برای همه اشخاص) و از مبلغ شهریه اون شخص کم کنید. اگر مانده صفر نشد سلکت کنید.

barman.ar16
شنبه 14 مرداد 1396, 07:13 صبح
طراحی اشتباهی رو پیش گرفتید. باید یک جدول برای شهریه و یک جدول برای اقساط پرداختی داشته باشید. برای اینکه بدهکاران رو بدست بیارید کافیه از جدول اقساط مجموع اقساط رو بدست بیارید(برای همه اشخاص) و از مبلغ شهریه اون شخص کم کنید. اگر مانده صفر نشد سلکت کنید.

ممنون از پاسخ گویی

خب من الان هم دو تا جدول دارم یکی جدول اولیه دومی هم اقساط که در واقع همین که نمایش دادم قسمتی از جدول اقساط هست توی جدول اولی فقط نام ، کد ملی و مبلغ کل شهریه هست که در واقع کاربر توی فرم مربوط به اون دانش آموز جدید رو ثبت می کنه و بعد توی یک فرم سلکتور دانش آموز موردنظر رو انتخاب می کنه و براش قسط می زنه ...

حالا با همین روش نمیشه یک کاریش کرد ... در واقع اگر من نخوام مغایر با صفر ها رو بیارم مشکلی نیست چون با همون دستور group by مشکل حله ولی فقط مشکل مانده مغایر با صفر رو دارم
متشکرم