2011-10-30 2 views
2

за стол на MS-SQL2000, содержащий следующие столбцы и номер:Transact SQL, суммировать каждую строку и вставить в другую таблицу

S_idJ_id Se_id B_id Status Count multiply 
63 1000 16 12 1 10 2  
64 1001 12 16 1 9 3  
65 1002 17 12 1 10 2  
66 1003 16 12 1 6 3  
67 1004 12 16 1 10 2  

Я хочу, чтобы сформировать классический ASP скрипт, который будет выполнять следующие функции для каждого строка , где состояние = 1:

-кратно -> ответ = умножить столбец 'Count' с колонкой 'умножить'

Тогда:

чтобы посчитать тал ответу и сумма по каждому se_id нравятся:

se_id total 
12  47 
16  38 
17  20 

и отображение на экране, как

Rank se_id total 
1  12  47 
2  16  38 
3  17  20 

Состояние: при наличии несколько равных суммарных значений затем дают нижнему пронумерованных se_id приоритет для получения чтобы показать больше голосов se_id Следующее число в разряде

Любой образец кода в классическом asp или совете приветствуется, как это сделать

+0

Я не думаю, что это действительно связано с классическим ASP .. в любом случае, что вы получили до сих пор? –

+0

Я получил только теорию на этом этапе - я читал книгу sql на сервере sql, используя transact sql только для этого. это можно сделать без asp – hhead

+0

исправил мой вопрос, так что это только asp. – hhead

ответ

0

'оценка' = исходная таблица.

if (EXISTS (select * from INFORMATION_SCHEMA.TABLES where TABLE_NAME = 'result_table')) 
begin 
    drop table result_table; 
end 

select 
    rank = IDENTITY(INT,1,1), 
    se_id, sum(multiply * count) as total 
into result_table 
from score 
where status = 1 
group by se_id 
order by total desc, se_id; 

[Редактировать] Изменить запрос в ответ на первый комментарий

+0

Ответ обновлен. (Это не решение asp ...) –

+0

Благодарим вас за ответ. это было действительно полезно – hhead

+1

Добро пожаловать. Рад помочь вам. Обычно принято принимать ответ, щелкнув значок отметки галочкой по почте. –

Смежные вопросы