PDA

View Full Version : مرتب سازی فیلد بر اساس زمان ورود؟



adibadm
شنبه 17 اسفند 1387, 21:50 عصر
سلام دوستان
من دو جدول دارم.
اولی: جدولی که چک هایی که از حساب برداشت می شود. فیلد کلید اصلی: id_bardasht
دومی: جدولی که چک هایی که به حساب واریز شده اند. فیلد کلید اصلی: id_variz
هر دو جدول دارای فیلد id_acc هستند این فیلد شماره حساب است. و به صورت کلید خارجی می باشد. (id_acc فیلد کلید جدول سومی است که اطلاعات حساب را در خود دارد)

حالا می خوام که یک ریز از یک حساب بگیرم که کلیه چک هایی که برداشت یا واریز شده اند را نمایش دهد البته به صورتی که وارد شده اند. یعنی این که مثلا اول 2 چک برداشت بعد 1 چک واریز و دوباره 3 چک دیگر برداشت شده است را به همین صورتی که وارد شده است در خروجی ببینم.
آیا همچین چیزی امکان دارد از دوستان ممنون می شم راهنمایی کنن.

EffatBandehlou
یک شنبه 18 اسفند 1387, 08:19 صبح
دوست عزيز شما در بدو امر بايد query مورد نظر را از هر جدول بزنيد.
بعد اين دو را به شرطي كه فيلدهاي يكساني (يا همنامي) داشته باشند با هم union كنيد.
بعد يك Select بيروني بزنيد و روي select بيروني order by بزنيد.البته به شرطي كه تاريخ يا زمان مورد نظر به ترتيبي باشد كه خواست شما رعايت شود

adibadm
یک شنبه 18 اسفند 1387, 14:07 عصر
خیلی ممنون اما این شکلی مشکل حل نمی شه چون دقت مرتب سازی بر حسب روز خواهد بود و نمی تواند بر حسب مورد باشد. یعنی در کل به اون صورتی که من می خوام نمی شه

EffatBandehlou
یک شنبه 18 اسفند 1387, 14:30 عصر
يه كار ديگه هم شايد بتونيد بكنيد.اونم اينه كه 3 تا جدول رو كه شماره حساب در آنها مشتركه با هم join كنيد.
البته در اين صورت ركوردها نه در ذيل هم كه در كنار هم ديده خواهند شد

EffatBandehlou
یک شنبه 18 اسفند 1387, 14:35 عصر
البته يه كار ديگه هم مي توني بكني.
اونم نوشتن يه triger هستش.يعني به ازاي ورود اطلاعات در هر يك از جدول ها شماره حساب ، نوع عمليات و تاريخ اون در يك جدول جداگانه ذخيره بشه.
اطلاعات هر دو جدول در يك جدول و به ترتيب ورود ذخيره مي شوند.
اين يك راهه.
راهه ديگه هم اين كه علاوه بر تاريخ ، زمان رو هم در جدولاتون نگه داريد تا با union به راحتي جواب بدست بياد