PDA

View Full Version : سوال: محاسبه رتبه اعداد در يك Table با دستورات SQL



hrsaberi
سه شنبه 15 تیر 1389, 20:41 عصر
سلام.
مسئله اي كه شايد خيلي از ما با اون روبرو شديم.

فايلي داريم شامل سه فيلد :



ID
Num
Grade

فيلد شماره 2 شامل يكسري عدد اعشاري است.
مي خواهيم در فيلد سوم رتبه اعداد در جدول ذخيره شود.
بطور مثال :
اعداد ......رتبه
20 ........ 1
20 .........1
19......... 2
18.75..... 3


لطفا بهترين راه حل رو پيشنهاد بدين

masoudcg1
سه شنبه 15 تیر 1389, 23:54 عصر
اگر از نسخه 2005 به بعد استفاده می کنید .

SELECT NUM,rownumber() FROM YourTale

امکانات پیشرفته تری تو این زمینه هم داره . اگه مشکلت حل نشد . ادامه میدم

پوریا_م
چهارشنبه 16 تیر 1389, 08:42 صبح
اگر از نسخه 2005 به بعد استفاده می کنید

سلام
در نسخه 2000 چطور میشه اینکار رو انجام داد ؟؟؟

hrsaberi
چهارشنبه 16 تیر 1389, 09:12 صبح
masoudcg1 (http://www.barnamenevis.org/forum/member.php?u=54218) جان ممنون
ولي نسخه SQL 2000 چطور ؟

محمد سلیم آبادی
پنج شنبه 17 تیر 1389, 20:42 عصر
CREATE VIEW View_1 AS
SELECT ID, Num, (SELECT COUNT(DISTINCT Num)
FROM table_name
WHERE num >= t.num) AS Grade
FROM table_name T
GO
SELECT * FROM View_1
ORDER BY grade