PDA

View Full Version : sort



probit
جمعه 06 آبان 1384, 11:47 صبح
سلام
سه جدول داخل DataSet دارم می خواهم محتویات این سه جدول را با هم ترکیب کنم وداخل جدول چهارم بریزم و جدول چهارم بر اساس تاریخ مرتب باشد مشکل من در مرتب کردن این جدول است آیا دستوری هست که بشه محتویات جدول یک دیتاست را مرتب کرد در صورت امکان راهنمایی کنید
با تشکر

asilverisis
شنبه 07 آبان 1384, 12:19 عصر
سلام
می تونی از Dataview استفاده کنی و خاصیت Sort
به صورت زیر



Ds.Tables(3).DefaultView.Sort = "Date"

probit
یک شنبه 08 آبان 1384, 09:11 صبح
نه میخواهم خود دیتاست sort شود چون جدول 4 یک ستون محاسباتی دارد که باید رکوردهای آن جدول مرتب باشه

روح اله معینی زاده
یک شنبه 08 آبان 1384, 09:27 صبح
سلام به دوست گرامی

خوب آخر دستور SQL خودت رو با Order By درست کن تا وقتی داره دیتاست پر می شه مرتب‌شده پر بشه.

به طور مثال اگه شما بخوای سه فیلد متفاوت (f1, f2, f3) از سه جدول مختلف (t1, t2, t3) رو گزارش بگیری و بعد نتیجه بر اساس فیلد دوم (f2) از جدول دوم (t2) مرتب باشه، می تونی به شکل زیر بنویسی. البته WHERE به بعد دلخواه است، برای همین من به جای آن سه نقطه قرار داده‌ام.



SELECT t1.f1, t2.f2, t3.f3 FROM t1, t2, t3 WHERE ... ORDER BY t2.f2


امیدوارم درست گفته باشم.

با احترام- خدانگهدار

probit
دوشنبه 09 آبان 1384, 08:59 صبح
ببینید هر 3 جدول فیلدهایی به نامهای Des,Date,Pay دارند من می خواهم اینها در جدول 4 که همین 3فیلد و فیلد B است نوشته شوند وقتی بر اساس Date مرتب شد در فیلد B جمع Pay سطر قبلی با همین سطر نوشته شود(تاریخ مهم است)

asilverisis
دوشنبه 09 آبان 1384, 12:43 عصر
سلام
جدول چهارم رو توی Database می سازی یا به صورت runTime فقط توی Dataset ؟

probit
دوشنبه 09 آبان 1384, 17:41 عصر
سلام
جدول چهارم رو توی Database می سازی یا به صورت runTime فقط توی Dataset ؟

جدول را داخل خود دیتاست میسازم(در زمان طراحی) و در زمان اجرا پر میکنم

safasoft
دوشنبه 15 مرداد 1386, 13:13 عصر
من هم همین سوال را دارم

asar_001
دوشنبه 15 مرداد 1386, 17:53 عصر
اگه می تونی از defaultview استفاده کن


ds.dt.DefaultView.Sort = " date "

safasoft
سه شنبه 16 مرداد 1386, 09:56 صبح
سبلام.
من خودم با یک حلقه در dataset و روش حبابی این کار را کردم ولی از لحاظ زمانی بهینه نیست .

روح اله معینی زاده
چهارشنبه 17 مرداد 1386, 10:47 صبح
سلام

شما می خوای چه کاری انجام بدی؟
1- جمع کل پرداختی رو به دست بیاری
2- جمع کل پرداختی به ازای یه تاریخ خاص رو به دست بیاری؟

1: این حالت ساده است و یه جمع از جدول چهارمت می گیری و تمام. اصلاً هم به مرتب بودن تاریخ کاری نداری.

2: جمع کل به ازای هر تاریخ رو در سه جدول به دست بیار و نتیجه رو با هم جمع کن.

در ضمن من الان که دارم توضیح می دم، یه سوال برام پیش اومد.
جمع کردن مبالغ ردیف‌های قبل و نوشتن آن در ردیف جدید، چه مزیتی داره؟ شاید هم باید بپرسیم که چرا این کار انجام می شه؟ چون اگه این کار انجام بشه، خوب مرتب بودن یا نبودن بر اساس تاریخ دیگه نیاز نیست.

با احترام- خدانگهدار