PDA

View Full Version : مرتب كردن نتيجه پيدا شده از دو جدول



farzane_t
یک شنبه 07 مهر 1392, 17:38 عصر
سلام دوستان
من دو جدول دارم که میخوام مثلا در مجموع 50 رکوردشون رو نمایش بدم. اطلاعات باید بر حس تاریخ مرتب بشن.
تا اینجا این کوئری رو نوشتم :


(select 'download' as type , DlID as 'id',DLTitle as 'title',DlSummery as 'descp', DlPic as 'pic',DlDate as 'date' from Downloads)
union
(select 'paper' as type ,PID as 'id',PTitle as 'title',PaperSummary as 'descp', PaperPic as 'pic',PDate as 'date' from Papers)



میدونم با top(50) باید 50 رکورد اول رو بگیرم. فقط چطوری برحسب تاریخ مرتبشون کنم؟ نمیخوام اینکه از کدوم جدوله رو نتیجه تاثیر بزاره،

ممنون

majjjj
یک شنبه 07 مهر 1392, 21:16 عصر
میتونید از nested به این شکل اسفاده کنید
select top(50) * from yourcode order by your field

farzane_t
دوشنبه 08 مهر 1392, 07:52 صبح
واقعا ممنونم اما دقيق متوجه نشدم منظورتونو!
دو جدوله كه تاريخ تو يكي dldate و اون يكي pdate كه با استفاده از as به date تغيير دادم. اگه يه جدول بود اونطوري ميشد.
ميتونم نيمي از داده ها رو از يه جدول بگيرم و نيمي رو از يه جدول ديگه. اما نميخوام اينكارو بكنم
ميخوام نتيجه به جدول وابسته نباشه و فقط برحسب تاريخ مرتب بشه.

ميتونيد بيشتر برام توضيح بديد ؟

hamid_hr
دوشنبه 08 مهر 1392, 08:40 صبح
select top(50) t1.Name from(
select Name from City
union
select Name from Street)t1
order by t1.Name

برا شما يه چيزي ميشه شبيه به اين
select top(50) * from (
(select 'download' as type , DlID as 'id',DLTitle as 'title',DlSummery as 'descp', DlPic as 'pic',DlDate as 'date' from Downloads)
union
(select 'paper' as type ,PID as 'id',PTitle as 'title',PaperSummary as 'descp', PaperPic as 'pic',PDate as 'date' from Papers)
)t1
order by t1.date