PDA

View Full Version : مبتدی: دستور order by با استفاده از چند فیلد.



aminghaderi
سه شنبه 05 مرداد 1389, 21:22 عصر
با سلام خدمت اساتید و دوستان.
یه جدول داریم که چندتا فیلد داره که 2 تای اون ها فیلد های زیر هستند:
Date - Time
چطوری می تونم در زمان Select گرفتن از Table اون ها رو ابتدا از روی تاریخ و بعد از روی زمان مرتب کنیم و بعد لیست بگیرم؟؟؟
مثلا به این صورت :

1389/5/3 12:30
1389/5/3 11:20
1389/5/3 10:10
1389/5/2 08:00
1389/5/1 06:20
1389/5/1 05:30
با تشکر

aminghaderi
چهارشنبه 06 مرداد 1389, 10:33 صبح
دوستان این سوال ساده من رو هم یکی جواب بده لطفا:ناراحت:
من متاسفا اسکوالم زیاد خوب نیست.
من با این روش کار می کنم ، ولی جواب رو نمی گیرم؟!

Select * from mytable where id=5 order by data , time


این دستور فقط بروی تاریخ مرتب سازی رو انجام می ده؟!
ممنون می شم راهنمایی کنید.

محمد سلیم آبادی
چهارشنبه 06 مرداد 1389, 13:06 عصر
چطوری می تونم در زمان Select گرفتن از Table اون ها رو ابتدا از روی تاریخ و بعد از روی زمان مرتب کنیم و بعد لیست بگیرم؟؟؟

خود SQL Server ابتدا تاریخ را در اولویت اول قرار میده بعد زمان را، به عبارت دیگه اصلا نیازی نیست که شما کاری انجام بدین. ظاهرا قصد دارین بصورت نزولی مرتب کنید یعنی:
SELECT 1 FROM t ORDER BY date_tme DESC

در هر صورت اگر بخواهین این دو را از هم تفکیک کنید به این مقاله فوق العاده رجوع کنید:
http://databases.aspfaq.com/general/why-doesn-t-sql-server-allow-me-to-separate-date-and-time.html

aminghaderi
چهارشنبه 06 مرداد 1389, 13:36 عصر
ظاهرا قصد دارین بصورت نزولی مرتب کنیدبله دقیقا ، در پست بالا یادم رفت Desk رو بزارم.

در هر صورت اگر بخواهین این دو را از هم تفکیک کنید به این مقاله فوق العاده رجوع کنید:ممنون از راهنمایتون استاد ، من مقاله رو هم نگاه کردم ولی متاسفانه همون طوری که گفتم اسکیوالم ضعیفه و متوجه کارهایی که انجام داده نشدم؟!
قبل تر زمانی که دانشگاه بودم ، یکی از اساتید اسکیوال این کار رو انجام داد با استفاده از یه جدول کمکی در اسکیوال و اون جدول کمکی رو با جدول اصلی با فیلد زمان Joinn می کرد ولی متاسفانه الان اصلا یادم نیست که چطوری این کار صورت می گرفت.
برای کاری که من انجام می دم باید برای ثبت زمان وتاریخ از 2 تا فیلد استفاده کنم.

محمد سلیم آبادی
چهارشنبه 06 مرداد 1389, 13:42 عصر
خب، این نیازتون را برطرف نمی کنه؟
SELECT ... ORDER BY date DESC, time DESC

aminghaderi
شنبه 09 مرداد 1389, 15:38 عصر
خب، این نیازتون را برطرف نمی کنه؟
SELECT ... ORDER BY date DESC, time DESC
خیلی ممنونم استاد ، دقیقا همون چیزی بود که دنبالش بودم.