Author |
Topic |
seyha_moth
Yak Posting Veteran
74 Posts |
Posted - 2006-12-06 : 20:26:17
|
Dear Sir or MadamFirst,I have the problem relevant to sql queries is that I want to put automatically RowNumber when I enter data in sql server or insert statement.I search internet then they show using Select ROW_NUMBER() OVER(ORDER BY StudentID DESC) AS rownum,FullNameBut I make error ('ROW_NUMBER' is not a recognized function name.')Can you help me?Second,I want to create rank in sql query depending on the average value.The wanted result is showed the following statement:" rowNum--------FullName-------StudentID------Average-----Rank 1-------------seyha----------7777-----------50.15-------5 2-------------chan-----------5554-----------40.56-------6 3-------------heng-----------5474-----------70.12-------1 4-------------than-----------1245-----------40.56-------6How Can I do to calculate Rank by AverageI look forward to hearing from youThank you in advanceGood Luck and Suceed your work or studyseyha moth |
|
TG
Master Smack Fu Yak Hacker
6065 Posts |
Posted - 2006-12-06 : 21:19:00
|
Row_Number() is a function that was introduced in sql server 2005 so unless you have that it won't work for you. Also that will not be stored with the data but rather derived as when the rows are selected. What you described sounds like you want an IDENTITY column. Read about that in Books Online.as for the rank you can do something like this:select <columnList>, Rank = (select count(*) from yourTable as b where b.[Average] >= a.[Average])from yourTable as aEDIT:I my be missing something...why do your rank values skip so many numbers?Be One with the OptimizerTG |
 |
|
seyha_moth
Yak Posting Veteran
74 Posts |
Posted - 2006-12-06 : 22:15:58
|
Thank u for your reply,but I am using SQL Server 2005,so RowNumber still unrecognize this command.As If Average is compute column from Score,but I forget to input score to you.Now I will copy entire source code to you.ALTER Procedure [dbo].[procX_ScoreResult]AS declare @EnSubjectName nvarchar(50)declare @Str nvarchar(4000)declare subject_cursor CURSORFOR Select distinct EnSubjectName from vX_ScoreWithStudentInfo where AcademicYear='2006-2007' and Year='3' and Semester=2OPEN subject_cursorset @Str=''FETCH NEXT from subject_cursor into @EnSubjectNameWHILE @@FETCH_STATUS=0 BEGIN set @Str=@Str+'['+@EnSubjectName+']'+'=ISNULL(Sum(CASE WHEN a.EnSubjectName='''+@EnSubjectName+''' THEN a.Score END),0),' FETCH NEXT FROM subject_cursor into @EnSubjectNameENDCLOSE subject_cursorset @Str=Substring(@Str,0,Len(@Str))--Exec('Select FullName,Sex=Case WHEN Sex=1 THEN ''M'' WHEN Sex=2 THEN ''F'' END,StudentID,'+ @Str +',Round(Avg(Score),2) AS Average, From vX_ScoreWithStudentInfo Group by FullName,Sex,StudentID')Exec('Select FullName,Sex=Case WHEN Sex=1 THEN ''M'' WHEN Sex=2 THEN ''F'' END,StudentID,'+ @Str +',Round(Avg(Score),2) AS Average, From vX_ScoreWithStudentInfo Group by FullName,Sex,StudentID')DEALLOCATE subject_cursorseyha moth |
 |
|
madhivanan
Premature Yak Congratulator
22864 Posts |
Posted - 2006-12-07 : 00:05:31
|
1 If you use front end application, do numbering there2 Use temp table with identity columnMadhivananFailing to plan is Planning to fail |
 |
|
seyha_moth
Yak Posting Veteran
74 Posts |
Posted - 2006-12-07 : 04:06:16
|
Thank u for your reply.May be I can solve this problem with your help.But I can't solve Rank because Average is compute column and If I compare like thisselect <columnList>, Rank = (select count(*) from yourTable as b where b.[Average] >= a.[Average])from yourTable as aIf and only of Average is normal columnHow Can I do?Good Luck and Suceed your work or studyseyha moth |
 |
|
SwePeso
Patron Saint of Lost Yaks
30421 Posts |
Posted - 2006-12-07 : 04:10:28
|
quote: Originally posted by seyha_moth rowNum--------FullName-------StudentID------Average-----Rank 1-------------seyha----------7777-----------50.15-------5 2-------------chan-----------5554-----------40.56-------6 3-------------heng-----------5474-----------70.12-------1 4-------------than-----------1245-----------40.56-------6
Yes, this is your wanted result, but how do your base data look like?Please post the sample data who lead to the result above.Peter LarssonHelsingborg, Sweden |
 |
|
seyha_moth
Yak Posting Veteran
74 Posts |
Posted - 2006-12-07 : 04:58:59
|
FullName Sex StudentID C Program vb.net asp.net java average rankSan Kim Leang F 20040002 0 0 0 -2 -2 1Vann Voleak F 20040005 0 0 0 -2 -2 1Phourng F 20040010 0 0 0 -2 -2 1Vorn Bunna Rith M 20040015 0 -2 0 -2 -1.33 3Som Suy M 20040036 0 0 -2 0 -2 1Meas Varun F 20040065 0 0 0 -2 -2 1Buth Van Deth M 20040081 0 0 -2 0 -2 1Un Rattana F 20040138 0 0 0 -2 -2 1Ly Chenda M 20040157 0 -2 0 -2 -1.33 3Mao BoRey F 20040175 0 0 0 -2 -2 1Vann Srey Pao F 20040176 0 0 0 -2 -2 1Sim Sothy F 20040180 0 0 0 -2 -2 1Heng Thea Ny F 20040181 0 0 0 -2 -2 1Koy Sophea Ra M 20040184 0 0 0 -2 -2 1Sor So Ny F 20040185 0 0 0 -2 -2 1Cheak Tey F 20040186 0 0 0 -2 -2 1Say Sova Thana F 20040188 0 0 0 -2 -2 1Nhip SokKhen M 20040190 0 -2 0 -2 -1.33 3Than ffff M 20040193 0 -2 0 -2 -1.33 3Seng Pisey M 20040194 0 -2 0 -2 -1.33 3Meas Phearom M 20040211 0 0 -2 0 -2 1Ly Panga F 20040215 0 0 -2 0 -2 1Tav Dany F 20040230 0 0 0 -2 -2 1Chhin Bean M 20040232 0 0 -2 0 -2 1Kol Sovan Mon M 20040236 0 0 -2 0 -2 1Kou Ku Naet F 20040239 0 0 -2 0 -2 1Bun Sina F 20040269 0 0 0 -2 -2 1Ou Sopheak Na F 20040270 0 -2 0 -2 -1.33 3Nal NiMol F 20040274 0 0 0 -2 -2 1Meth Ma Liden F 20040276 0 0 0 -2 -2 1Ponh Long Dy M 20040277 0 -2 0 -2 -1.33 3Huot SomBath M 20040278 0 0 0 -2 -2 1Morn Many F 20040301 0 0 0 -2 -2 1Cheang Puthea Rath F 20040307 0 0 0 -2 -2 1Leng Srey Mom F 20040309 0 0 0 -2 -2 1Kou Bakke M 20040358 0 -2 0 -2 -1.33 3SamBath Samnang F 20040399 0 0 -2 0 -2 1Chum Puthy Roath M 20040400 0 0 0 -2 -2 1Sun Da Mean M 20040420 0 0 -2 0 -2 1Phon Chan Meardey F 20040451 0 0 0 -2 -2 1Hong Phary F 20040480 0 0 0 -2 -2 1Khek Bunna M 20040483 0 0 0 -2 -2 1Thel rattana M 20040518 0 -2 0 -2 -1.33 3Doung ChamRoe M 20040520 0 0 0 -2 -2 1Serey ma len F 20040527 0 0 0 -2 -2 1Lee Hak Sim M 20040529 0 0 0 -2 -2 1SENG CHAN DA M 20040558 0 0 -2 0 -2 1Som So Pheak M 20040559 0 0 -2 0 -2 1Ek Vu Tha M 20040560 0 0 -2 0 -2 1Ear Chheng Hai M 20040583 0 0 0 -2 -2 1Phon Sotheary F 20040601 0 0 0 -2 -2 1Prach Sela F 20040602 0 0 0 -2 -2 1Hak Sophearkna F 20040606 0 0 0 -2 -2 1En he lene F 20040609 0 0 0 -2 -2 1An sophat M 20040611 35 -2 0 -2 10.33 3Kin sa roeun F 20040644 0 0 0 -2 -2 1Phal pisith M 20040678 0 0 -2 0 -2 1Tang muoy ngim F 20040686 0 0 0 -2 -2 1Khin veasna M 20040706 0 -2 0 -2 -1.33 3Buoy Da ly F 20040743 0 0 -2 0 -2 1Cheng Di Na F 20040751 0 0 -2 0 -2 1Ros SamBo M 20040757 0 -2 0 -2 -1.33 3Seang Ratha M 20040760 0 0 -2 0 -2 1Tang lay chay M 20040790 0 0 0 -2 -2 1Ou kim horn M 20040793 0 -2 0 -2 -1.33 3Sem chak riya F 20040799 0 0 0 -2 -2 1Sok sara voeun M 20040802 0 -2 0 -2 -1.33 3Thuch di na F 20040826 0 0 0 -2 -2 1Pin dina F 20040829 0 0 0 -2 -2 1Horth leakhena F 20040830 0 0 0 -2 -2 1Samrith so F 20040831 0 0 0 -2 -2 1Eng khunnary F 20040832 0 -2 0 -2 -1.33 3Kim so phal F 20040834 0 0 0 -2 -2 1Hak pov M 20040842 0 0 -2 0 -2 1Eang sok bopha F 20040851 0 0 -2 0 -2 1Pok Makara F 20040855 0 0 0 -2 -2 1Srin serey M 20040863 0 0 0 -2 -2 1Seng tan M 20040889 0 0 -2 0 -2 1Choup So Mony F 20040928 0 0 0 -2 -2 1Run veasna F 20040933 0 0 0 -2 -2 1Real Chan Thea M 20040952 0 0 0 0 -2 1Seng mar dy F 20040954 0 -2 0 -2 -1.33 3Prum Phyrun M 20041000 0 -2 0 -2 -1.33 3Nget Cheakny F 20041002 0 0 0 -2 -2 1Soeung Mora F 20041059 0 0 0 -2 -2 1Heng Thida F 20041060 0 0 0 -2 -2 1Sok Visal F 20041062 0 0 0 -2 -2 1Ngo SiChan F 20041064 0 0 0 -2 -2 1Vong Kek Sokorn M 20041068 0 -2 0 -2 -1.33 3Chhuon Hok Seng M 20041072 0 0 0 -2 -2 1Chhun so nath F 20041085 0 0 -2 0 -2 1Kim seen M 20041089 0 0 -2 0 -2 1Kob k soem M 20041095 0 0 -2 0 -2 1Leang so pheap F 20041123 0 0 0 -2 -2 1Bun vat M 20041140 0 0 0 -2 -2 1Ouk so rida F 20041172 0 -2 0 -2 -1.33 3Hul sam nang M 20041177 0 0 -2 0 -2 1Morn chan leak F 20041193 0 0 -2 0 -2 1Sar srey neang F 20041199 0 0 0 -2 -2 1Nong sokna F 20041201 0 0 0 -2 -2 1Pech sam phors F 20041207 0 0 0 -2 -2 1Tiw Sok Leng F 20041232 0 0 0 -2 -2 1Sek Phanet M 20041241 0 -2 0 -2 -1.33 3Koh Kanhara F 20041263 0 0 0 -2 -2 1Eam Makara F 20041294 0 0 0 -2 -2 1Som Sa ra M 20041305 0 -2 0 -2 -1.33 3Khun Rachana M 20041306 0 -2 0 -2 -1.33 3Seng Bo ka F 20041309 0 0 0 -2 -2 1An Chenda F 20041325 0 0 -2 0 -2 1Roeun Lina M 20041347 0 0 0 0 -2 1Thy Sokha F 20041349 0 0 0 -2 -2 1Touch Kakda F 20041355 0 -2 0 -2 -1.33 3Choup Sakkna F 20041357 0 0 0 -2 -2 1No Theary F 20041388 0 0 0 -2 -2 1Ry sok chan M 20041429 0 -2 0 -2 -1.33 3Bun malis F 20041430 0 0 0 -2 -2 1Sok seila M 20041446 0 0 0 -2 -2 1Pith mary neth F 20041471 0 0 0 -2 -2 1Soeung amra F 20041513 0 0 0 -2 -2 1Oum sophorn F 20041545 0 0 0 -2 -2 1Krouch siphan M 20041548 0 0 -2 0 -2 1El Many F 20041630 0 0 -2 0 -2 1Min Chan F 20041641 0 0 0 -2 -2 1Phom Chan F 20041667 0 0 0 -2 -2 1Chan LiNeth F 20041692 0 0 0 -2 -2 1Im Narom F 20041701 0 0 0 -2 -2 1Ngeab Chheng M 20041726 0 0 -2 0 -2 1Oum Srey Mom F 20041750 0 0 -2 0 -2 1Pech Heng M 20041762 0 0 -2 0 -2 1Khun Sokun The F 20041770 0 0 0 -2 -2 1Ly Rachana F 20041814 0 0 0 -2 -2 1Chab Thearin F 20041853 0 0 0 -2 -2 1Eun Sok Chea M 20041854 0 0 -2 0 -2 1Ham Sok Teang F 20041883 0 0 0 -2 -2 1Heng Navy F 20041892 0 0 0 -2 -2 1Pak Kap M 20041896 0 -2 0 -2 -1.33 3Kao Tay Hok M 20042086 0 0 -2 0 -2 1Huot Borin M 20042105 0 0 0 -2 -2 2Keo Sokha M 20050106 0 0 0 -2 -2 2Man Sitha F 20050141 0 0 0 0 -2 1Sao So Vorn M 20050170 0 0 0 0 -2 1Long Daneth F 20050317 0 0 0 -2 -2 2Oeung Naro F 20050494 0 0 0 -2 -2 1Chan Mengly M 20050609 0 0 0 0 19 1Chan Sreymex F 20050652 0 0 0 0 29 1Hong Kim Sea F 20050705 0 0 0 0 -2 1Nou Chamroeun M 20050735 0 0 0 0 -2 1Chhoeun M 20050748 0 0 0 0 9 1Meng Sophearon M 20050893 0 0 0 0 -2 1Touch Pisakha M 20050922 0 0 0 0 -2 1Sovath Seyha M 20050953 0 0 0 0 -2 1Moung Samnang M 20050992 0 0 0 0 -2 1Din Si Deth M 20051009 0 0 0 0 -2 1Ty Oudam M 20051021 0 0 0 0 -2 1Hun Vatheany F 20051059 0 0 0 0 -2 1Pos So Pha M 20051075 0 0 0 0 -2 1Huot Siha Vorin M 20051078 0 0 0 0 -2 1Sum Chhor Woan F 20051087 0 0 0 0 -2 1Meas Sophan N M 20051120 0 0 0 0 -2 1Khun Choeurn M 20051149 0 0 0 0 -2 1Kim Si Na F 20051164 0 0 0 0 -2 1Ma So Phea F 20051483 0 0 0 0 -2 1Kim Piseth F 20051495 0 0 0 -2 -2 1Chan dara M 20051746 0 0 0 0 19 1Sngourn Sok Ch F 20051768 0 0 0 0 -2 1Rang So Thea M 20051773 0 0 0 0 -2 1Kong Chamroeun M 20051790 0 0 0 0 -2 1Pich Veasna M 20051899 0 0 0 0 -2 1Lor Kim Sreang M 20051905 0 0 0 0 -2 1Ngorn Rathna F 20052091 0 0 0 0 -2 1Seng So Phakdey M 20052104 0 0 0 0 -2 1Lin Sokha Lin F 20052333 0 0 0 0 -2 1Sin Bun Chheang M 20052505 0 0 0 0 -2 1Khun So Voleak F 20052623 0 0 0 0 -2 1Heng Theara M 20052775 0 0 0 0 -2 1Thang Ly Hor M 20052809 0 0 0 0 -2 1Long Sokha F 20052881 0 0 0 0 -2 1Kheang Sok Leap M 20052945 0 0 0 0 -2 1Savann Sophea M 20060057 0 0 -2 0 -2 1Poeu Vuthy M 20060149 0 0 0 0 -2 3Yin Somolina F 20060153 0 0 0 0 -2 3Chee Leang Heng M 20060208 0 0 0 0 -2 3Ben Bunly M 20060224 0 0 0 0 -2 3ENG ONTOUCH M 20060227 0 0 0 0 -2 3CHHUON MONORA M 20060232 0 0 0 0 -2 3Srong Samnong M 20060273 0 0 0 0 -2 3VA SOKLEANG F 20060286 0 0 0 0 -2 3Khorn Khanya F 20060290 0 0 0 0 -2 3Keo Sotheary M 20060296 0 0 0 0 -2 3Ros Salin M 20060308 0 0 0 0 -2 3Thou Chaktodara F 20060323 0 0 0 0 -2 3Sin Son Vatey F 20060351 0 0 0 0 -2 3Som Tola M 20060364 0 0 0 0 -2 3Viseth Pech M 20060384 0 0 0 0 -2 3Chhorn Ron M 20060389 0 0 0 0 -2 3In Reasey F 20060391 0 0 0 0 -2 3Hem Sarin Danou F 20060398 0 0 0 0 -2 3Morm Leakhena F 20060415 0 0 0 0 -2 3Ny Malyka M 20060418 0 0 0 0 -2 3Lun Peng Srorn M 20060419 0 0 0 0 -2 3Tho Sopheanith M 20060440 0 0 0 0 -2 3Roeung Naro M 20060451 0 0 0 0 -2 3Ray Sreymoch F 20060455 0 0 0 0 -2 3Lim Hak M 20060470 0 0 0 0 -2 3Srey Sovatey F 20060478 0 0 0 0 -2 3Sok So Maline F 20060480 0 0 0 0 -2 3Phauk Satya M 20060481 0 0 0 0 -2 3Thay Meng Heang M 20060488 0 0 0 0 -2 3Touch Vantha F 20060494 0 0 0 0 -2 3Por Vibol M 20060495 0 0 0 0 -2 3Ul Sophon M 20060497 0 0 0 0 -2 3Te Sokuntheary F 20060503 0 0 0 0 -2 3You Leang M 20060508 0 0 0 0 -2 3Thun Sokunthea F 20060512 0 0 0 0 -2 3Yem Vibon M 20060520 0 0 0 0 -2 3Cheav Hak M 20060525 0 0 0 0 -1.67 3An Sokly F 20060547 30 60 0 -2 29.33 3Lim Bun Hong M 20060551 0 0 0 0 -2 3Ngoun Somaly F 20060552 0 0 0 0 -2 3So Phak Ny F 20060555 0 0 0 0 -2 3Soun Sophal F 20060562 0 0 0 0 -2 3Choun dfdsf F 20060563 0 0 0 0 11.67 3Chea Pisey M 20060576 0 0 0 0 -1 3Kim Ratha M 20060577 0 0 0 0 -2 3Sroy Eak Heng M 20060583 0 0 0 0 -2 3Sam Chamnap M 20060604 0 0 0 0 -2 3Nham Chamroeun M 20060613 0 0 0 0 -2 3Som Panchakmor F 20060633 0 0 0 0 -2 3Heang Danine F 20060635 0 0 0 0 -2 3Thoul Thavona F 20060638 0 0 0 0 -2 3Sieng Bun Ny M 20060639 0 0 0 0 -2 3Som Sophal F 20060646 0 0 0 0 -2 3Kheav Chita F 20060650 0 0 0 0 -2 3Auth Sichann F 20060656 0 0 0 0 5 3Nouv Saronn F 20060657 0 0 0 0 -2 3LY Serey Vuth M 20060683 0 0 0 0 -2 3Ty Sokun Virya F 20060684 0 0 0 0 -2 3Lim Sreyleak F 20061007 0 0 0 0 -2 3Seng Rachana F 20061008 0 0 0 0 -2 3Mao Pisey F 20061253 0 0 0 0 -2 3Chhit Chamnan M 20061269 0 0 0 0 -2 3Mao Solina F 20061444 0 0 0 0 -2 3Din Sophea M 20061506 0 0 0 0 -2 3Som Molika F 20061680 0 0 0 0 -2 3Leng Da M 20061695 0 0 0 0 -2 3Choum Chan F 20061756 0 0 0 0 -2 3Uy Dalune F 20061782 0 0 0 0 -2 3Chea Sambath M 20061792 0 0 0 0 -2 3Sok Heng M 20061884 0 0 0 0 -2 3Tha Sreymom F 20062445 0 0 0 0 -2 3Tan Lida F 20062446 0 0 0 0 -2 3Him Ratanak M 20062448 0 -2 0 -2 -1.33 3Yuk Sengchann M 20062691 0 0 0 0 -2 3Sam An Yden M 20062811 0 0 0 -2 -2 1Sann Sary M 20062843 0 0 0 0 -2 3Heng Savy M 21030010 0 0 0 -2 -2 1Sok chak riya F 21030082 0 0 0 -2 -2 2Uk Sengly F 21030108 0 0 0 -2 -2 2khlaing Vutha M 21030109 0 0 0 -2 -2 1Chhim soch F 21030116 0 0 0 -2 -2 1Chan ra vy F 21030164 0 0 0 -2 -2 1Prom Sophonn F 21030283 0 0 0 -2 -2 2Phai ma kara M 22030005 0 0 0 -2 -2 2Chhim Thida F 22030010 0 0 0 -2 -2 2Kong Sotha Ry F 22030013 0 0 0 -2 -2 2Srey Vanna F 22030018 0 0 0 -2 -2 2Chea Sarath F 22030019 0 0 0 -2 18.5 2Bun Pesey M 22030022 0 0 0 -2 3.5 2Chay Maly F 22030024 0 0 0 -2 13.5 2Ka Puthea rith M 22030040 0 0 0 -2 -2 2Chhoeurn vann M 22030042 0 0 0 -2 -2 2Chuk Seihak M 22030061 0 0 0 -2 -2 2Ros so phea F 22030067 0 0 0 -2 -2 2Chuon raneat F 22030078 0 0 0 -2 -2 2Long Sochit M 22030080 0 0 0 -2 -2 2Chheang so F 22030091 0 0 0 -2 -2 2Chan vichet M 22030095 0 0 0 -2 18.5 2Tep Neavea M 22030102 0 0 0 -2 -2 2Ell rano F 22030104 0 0 0 -2 -2 2Chin vira deth F 22030107 0 0 0 -2 -2 2Chan dani da F 22030143 0 0 0 -2 8.5 2Thlork chan F 22030153 0 0 0 -2 -2 2Loy Leang Eng M 22030162 0 0 0 -2 -2 2Morn phana M 25030160 0 -2 0 -2 -1.33 3Ek Pholla M 28030008 0 0 0 10 3.33 3ONG KARIN DET M 28030055 0 0 0 -2 -2 2Chhay Seth M 29030366 0 0 0 -2 -2 1Math Lima F 6966 0 0 0 -2 -2 2Chea Davy F 7551 0 0 0 -2 -2 1Leng Khuy M 7624 0 0 0 -2 -2 2Chim van nak M 7689 0 0 -2 0 -2 1Taing Pengny M 7724 0 0 0 -2 -2 2Doung darareak M 8396 0 0 -2 0 -2 1En roth F 8451 0 0 -2 0 -2 1Pok Chanthan M 8727 0 0 0 -2 -2 2seyha moth |
 |
|
seyha_moth
Yak Posting Veteran
74 Posts |
Posted - 2006-12-07 : 05:03:56
|
Sorry I make complexityseyha moth |
 |
|
seyha_moth
Yak Posting Veteran
74 Posts |
Posted - 2006-12-07 : 05:31:12
|
This is the sample view(vX_ScoreWithStudentInfo)FullName-----Sex-------StudentID----EnSubjectName------Scoreseyha--------M---------7444-----------Vb.net-------20seyha--------M---------7444-----------java---------50seyha--------M---------7444-----------Sql server---70chan---------M---------4578-----------vb.net-------50chan---------M---------4578-----------java---------60chan---------M---------4578-----------Sql server---50I create cross tab using cross tab queries CREATE Procedure [dbo].[procX_ScoreResult]AS declare @EnSubjectName nvarchar(50)declare @Str nvarchar(4000)declare subject_cursor CURSORFOR Select distinct EnSubjectName from vX_ScoreWithStudentInfo OPEN subject_cursorset @Str=''FETCH NEXT from subject_cursor into @EnSubjectNameWHILE @@FETCH_STATUS=0 BEGIN set @Str=@Str+'['+@EnSubjectName+']'+'=ISNULL(Sum(CASE WHEN EnSubjectName='''+@EnSubjectName+''' THEN Score END),0),' FETCH NEXT FROM subject_cursor into @EnSubjectNameENDCLOSE subject_cursorset @Str=Substring(@Str,0,Len(@Str))Exec('Select FullName,Sex=Case WHEN Sex=1 THEN ''M'' WHEN Sex=2 THEN ''F'' END,StudentID,'+ @Str +',Round(Avg(Score),2) AS Average From vX_ScoreWithStudentInfo Group by FullName,Sex,StudentID')DEALLOCATE subject_cursorAfterward,I want to get the following result:No---FullName-------Sex--------vb.net-----java-------Sql Server----Average----Rank1----seyha----------M----------20---------50---------70------------46.67------22----chan-----------M----------50---------60---------50------------53.33------1But almost of my problems is solved already,it remains Average,Rank,RowNumber(No) that I can calculate it.Can u help me?I look forward to hearing from youThank you in advanceGood Luck and Succeed your work and study.seyha moth |
 |
|
SwePeso
Patron Saint of Lost Yaks
30421 Posts |
Posted - 2006-12-07 : 05:35:15
|
Try this-- prepare test dataDECLARE @Test TABLE (FullName VARCHAR(21), Sex CHAR(1), StudentID INT, [C program] SMALLINT, [VB.Net] SMALLINT, [ASP.Net] SMALLINT, Java SMALLINT, Average SMALLMONEY, Rank SMALLINT)INSERT @TestSELECT 'An Chenda', 'F', 20041325, 0, 0, -2, 0, -2, 1 UNION ALLSELECT 'An Sokly', 'F', 20060547, 30, 60, 0, -2, 29.33, 3 UNION ALLSELECT 'An sophat', 'M', 20040611, 35, -2, 0, -2, 10.33, 3 UNION ALLSELECT 'Auth Sichann', 'F', 20060656, 0, 0, 0, 0, 5, 3 UNION ALLSELECT 'Ben Bunly', 'M', 20060224, 0, 0, 0, 0, -2, 3 UNION ALLSELECT 'Bun malis', 'F', 20041430, 0, 0, 0, -2, -2, 1 UNION ALLSELECT 'Bun Pesey', 'M', 22030022, 0, 0, 0, -2, 3.5, 2 UNION ALLSELECT 'Bun Sina', 'F', 20040269, 0, 0, 0, -2, -2, 1 UNION ALLSELECT 'Bun vat', 'M', 20041140, 0, 0, 0, -2, -2, 1 UNION ALLSELECT 'Buoy Da ly', 'F', 20040743, 0, 0, -2, 0, -2, 1 UNION ALLSELECT 'Buth Van Deth', 'M', 20040081, 0, 0, -2, 0, -2, 1 UNION ALLSELECT 'Chab Thearin', 'F', 20041853, 0, 0, 0, -2, -2, 1 UNION ALLSELECT 'Chan dani da', 'F', 22030143, 0, 0, 0, -2, 8.5, 2 UNION ALLSELECT 'Chan dara', 'M', 20051746, 0, 0, 0, 0, 19, 1 UNION ALLSELECT 'Chan LiNeth', 'F', 20041692, 0, 0, 0, -2, -2, 1 UNION ALLSELECT 'Chan Mengly', 'M', 20050609, 0, 0, 0, 0, 19, 1 UNION ALLSELECT 'Chan ra vy', 'F', 21030164, 0, 0, 0, -2, -2, 1 UNION ALLSELECT 'Chan Sreymex', 'F', 20050652, 0, 0, 0, 0, 29, 1 UNION ALLSELECT 'Chan vichet', 'M', 22030095, 0, 0, 0, -2, 18.5, 2 UNION ALLSELECT 'Chay Maly', 'F', 22030024, 0, 0, 0, -2, 13.5, 2 UNION ALLSELECT 'Chea Davy', 'F', 7551, 0, 0, 0, -2, -2, 1 UNION ALLSELECT 'Chea Pisey', 'M', 20060576, 0, 0, 0, 0, -1, 3 UNION ALLSELECT 'Chea Sambath', 'M', 20061792, 0, 0, 0, 0, -2, 3 UNION ALLSELECT 'Chea Sarath', 'F', 22030019, 0, 0, 0, -2, 18.5, 2 UNION ALLSELECT 'Cheak Tey', 'F', 20040186, 0, 0, 0, -2, -2, 1 UNION ALLSELECT 'Cheang Puthea Rath', 'F', 20040307, 0, 0, 0, -2, -2, 1 UNION ALLSELECT 'Cheav Hak', 'M', 20060525, 0, 0, 0, 0, -1.67, 3 UNION ALLSELECT 'Chee Leang Heng', 'M', 20060208, 0, 0, 0, 0, -2, 3 UNION ALLSELECT 'Cheng Di Na', 'F', 20040751, 0, 0, -2, 0, -2, 1 UNION ALLSELECT 'Chhay Seth', 'M', 29030366, 0, 0, 0, -2, -2, 1 UNION ALLSELECT 'Chheang so', 'F', 22030091, 0, 0, 0, -2, -2, 2 UNION ALLSELECT 'Chhim soch', 'F', 21030116, 0, 0, 0, -2, -2, 1 UNION ALLSELECT 'Chhim Thida', 'F', 22030010, 0, 0, 0, -2, -2, 2 UNION ALLSELECT 'Chhin Bean', 'M', 20040232, 0, 0, -2, 0, -2, 1 UNION ALLSELECT 'Chhit Chamnan', 'M', 20061269, 0, 0, 0, 0, -2, 3 UNION ALLSELECT 'Chhoeun', 'M', 20050748, 0, 0, 0, 0, 9, 1 UNION ALLSELECT 'Chhoeurn vann', 'M', 22030042, 0, 0, 0, -2, -2, 2 UNION ALLSELECT 'Chhorn Ron', 'M', 20060389, 0, 0, 0, 0, -2, 3 UNION ALLSELECT 'Chhun so nath', 'F', 20041085, 0, 0, -2, 0, -2, 1 UNION ALLSELECT 'Chhuon Hok Seng', 'M', 20041072, 0, 0, 0, -2, -2, 1 UNION ALLSELECT 'CHHUON MONORA', 'M', 20060232, 0, 0, 0, 0, -2, 3 UNION ALLSELECT 'Chim van nak', 'M', 7689, 0, 0, -2, 0, -2, 1 UNION ALLSELECT 'Chin vira deth', 'F', 22030107, 0, 0, 0, -2, -2, 2 UNION ALLSELECT 'Choum Chan', 'F', 20061756, 0, 0, 0, 0, -2, 3 UNION ALLSELECT 'Choun dfdsf', 'F', 20060563, 0, 0, 0, 0, 11.67, 3 UNION ALLSELECT 'Choup Sakkna', 'F', 20041357, 0, 0, 0, -2, -2, 1 UNION ALLSELECT 'Choup So Mony', 'F', 20040928, 0, 0, 0, -2, -2, 1 UNION ALLSELECT 'Chuk Seihak', 'M', 22030061, 0, 0, 0, -2, -2, 2 UNION ALLSELECT 'Chum Puthy Roath', 'M', 20040400, 0, 0, 0, -2, -2, 1 UNION ALLSELECT 'Chuon raneat', 'F', 22030078, 0, 0, 0, -2, -2, 2 UNION ALLSELECT 'Din Si Deth', 'M', 20051009, 0, 0, 0, 0, -2, 1 UNION ALLSELECT 'Din Sophea', 'M', 20061506, 0, 0, 0, 0, -2, 3 UNION ALLSELECT 'Doung ChamRoe', 'M', 20040520, 0, 0, 0, -2, -2, 1 UNION ALLSELECT 'Doung darareak', 'M', 8396, 0, 0, -2, 0, -2, 1 UNION ALLSELECT 'Eam Makara', 'F', 20041294, 0, 0, 0, -2, -2, 1 UNION ALLSELECT 'Eang sok bopha', 'F', 20040851, 0, 0, -2, 0, -2, 1 UNION ALLSELECT 'Ear Chheng Hai', 'M', 20040583, 0, 0, 0, -2, -2, 1 UNION ALLSELECT 'Ek Pholla', 'M', 28030008, 0, 0, 0, 10, 3.33, 3 UNION ALLSELECT 'Ek Vu Tha', 'M', 20040560, 0, 0, -2, 0, -2, 1 UNION ALLSELECT 'El Many', 'F', 20041630, 0, 0, -2, 0, -2, 1 UNION ALLSELECT 'Ell rano', 'F', 22030104, 0, 0, 0, -2, -2, 2 UNION ALLSELECT 'En he lene', 'F', 20040609, 0, 0, 0, -2, -2, 1 UNION ALLSELECT 'En roth', 'F', 8451, 0, 0, -2, 0, -2, 1 UNION ALLSELECT 'Eng khunnary', 'F', 20040832, 0, -2, 0, -2, -1.33, 3 UNION ALLSELECT 'ENG ONTOUCH', 'M', 20060227, 0, 0, 0, 0, -2, 3 UNION ALLSELECT 'Eun Sok Chea', 'M', 20041854, 0, 0, -2, 0, -2, 1 UNION ALLSELECT 'Hak pov', 'M', 20040842, 0, 0, -2, 0, -2, 1 UNION ALLSELECT 'Hak Sophearkna', 'F', 20040606, 0, 0, 0, -2, -2, 1 UNION ALLSELECT 'Ham Sok Teang', 'F', 20041883, 0, 0, 0, -2, -2, 1 UNION ALLSELECT 'Heang Danine', 'F', 20060635, 0, 0, 0, 0, -2, 3 UNION ALLSELECT 'Hem Sarin Danou', 'F', 20060398, 0, 0, 0, 0, -2, 3 UNION ALLSELECT 'Heng Navy', 'F', 20041892, 0, 0, 0, -2, -2, 1 UNION ALLSELECT 'Heng Savy', 'M', 21030010, 0, 0, 0, -2, -2, 1 UNION ALLSELECT 'Heng Thea Ny', 'F', 20040181, 0, 0, 0, -2, -2, 1 UNION ALLSELECT 'Heng Theara', 'M', 20052775, 0, 0, 0, 0, -2, 1 UNION ALLSELECT 'Heng Thida', 'F', 20041060, 0, 0, 0, -2, -2, 1 UNION ALLSELECT 'Him Ratanak', 'M', 20062448, 0, -2, 0, -2, -1.33, 3 UNION ALLSELECT 'Hong Kim Sea', 'F', 20050705, 0, 0, 0, 0, -2, 1 UNION ALLSELECT 'Hong Phary', 'F', 20040480, 0, 0, 0, -2, -2, 1 UNION ALLSELECT 'Horth leakhena', 'F', 20040830, 0, 0, 0, -2, -2, 1 UNION ALLSELECT 'Hul sam nang', 'M', 20041177, 0, 0, -2, 0, -2, 1 UNION ALLSELECT 'Hun Vatheany', 'F', 20051059, 0, 0, 0, 0, -2, 1 UNION ALLSELECT 'Huot Borin', 'M', 20042105, 0, 0, 0, -2, -2, 2 UNION ALLSELECT 'Huot Siha Vorin', 'M', 20051078, 0, 0, 0, 0, -2, 1 UNION ALLSELECT 'Huot SomBath', 'M', 20040278, 0, 0, 0, -2, -2, 1 UNION ALLSELECT 'Im Narom', 'F', 20041701, 0, 0, 0, -2, -2, 1 UNION ALLSELECT 'In Reasey', 'F', 20060391, 0, 0, 0, 0, -2, 3 UNION ALLSELECT 'Ka Puthea rith', 'M', 22030040, 0, 0, 0, -2, -2, 2 UNION ALLSELECT 'Kao Tay Hok', 'M', 20042086, 0, 0, -2, 0, -2, 1 UNION ALLSELECT 'Keo Sokha', 'M', 20050106, 0, 0, 0, -2, -2, 2 UNION ALLSELECT 'Keo Sotheary', 'M', 20060296, 0, 0, 0, 0, -2, 3 UNION ALLSELECT 'Kheang Sok Leap', 'M', 20052945, 0, 0, 0, 0, -2, 1 UNION ALLSELECT 'Kheav Chita', 'F', 20060650, 0, 0, 0, 0, -2, 3 UNION ALLSELECT 'Khek Bunna', 'M', 20040483, 0, 0, 0, -2, -2, 1 UNION ALLSELECT 'Khin veasna', 'M', 20040706, 0, -2, 0, -2, -1.33, 3 UNION ALLSELECT 'khlaing Vutha', 'M', 21030109, 0, 0, 0, -2, -2, 1 UNION ALLSELECT 'Khorn Khanya', 'F', 20060290, 0, 0, 0, 0, -2, 3 UNION ALLSELECT 'Khun Choeurn', 'M', 20051149, 0, 0, 0, 0, -2, 1 UNION ALLSELECT 'Khun Rachana', 'M', 20041306, 0, -2, 0, -2, -1.33, 3 UNION ALLSELECT 'Khun So Voleak', 'F', 20052623, 0, 0, 0, 0, -2, 1 UNION ALLSELECT 'Khun Sokun The', 'F', 20041770, 0, 0, 0, -2, -2, 1 UNION ALLSELECT 'Kim Piseth', 'F', 20051495, 0, 0, 0, -2, -2, 1 UNION ALLSELECT 'Kim Ratha', 'M', 20060577, 0, 0, 0, 0, -2, 3 UNION ALLSELECT 'Kim seen', 'M', 20041089, 0, 0, -2, 0, -2, 1 UNION ALLSELECT 'Kim Si Na', 'F', 20051164, 0, 0, 0, 0, -2, 1 UNION ALLSELECT 'Kim so phal', 'F', 20040834, 0, 0, 0, -2, -2, 1 UNION ALLSELECT 'Kin sa roeun', 'F', 20040644, 0, 0, 0, -2, -2, 1 UNION ALLSELECT 'Kob k soem', 'M', 20041095, 0, 0, -2, 0, -2, 1 UNION ALLSELECT 'Koh Kanhara', 'F', 20041263, 0, 0, 0, -2, -2, 1 UNION ALLSELECT 'Kol Sovan Mon', 'M', 20040236, 0, 0, -2, 0, -2, 1 UNION ALLSELECT 'Kong Chamroeun', 'M', 20051790, 0, 0, 0, 0, -2, 1 UNION ALLSELECT 'Kong Sotha Ry', 'F', 22030013, 0, 0, 0, -2, -2, 2 UNION ALLSELECT 'Kou Bakke', 'M', 20040358, 0, -2, 0, -2, -1.33, 3 UNION ALLSELECT 'Kou Ku Naet', 'F', 20040239, 0, 0, -2, 0, -2, 1 UNION ALLSELECT 'Koy Sophea Ra', 'M', 20040184, 0, 0, 0, -2, -2, 1 UNION ALLSELECT 'Krouch siphan', 'M', 20041548, 0, 0, -2, 0, -2, 1 UNION ALLSELECT 'Leang so pheap', 'F', 20041123, 0, 0, 0, -2, -2, 1 UNION ALLSELECT 'Lee Hak Sim', 'M', 20040529, 0, 0, 0, -2, -2, 1 UNION ALLSELECT 'Leng Da', 'M', 20061695, 0, 0, 0, 0, -2, 3 UNION ALLSELECT 'Leng Khuy', 'M', 7624, 0, 0, 0, -2, -2, 2 UNION ALLSELECT 'Leng Srey Mom', 'F', 20040309, 0, 0, 0, -2, -2, 1 UNION ALLSELECT 'Lim Bun Hong', 'M', 20060551, 0, 0, 0, 0, -2, 3 UNION ALLSELECT 'Lim Hak', 'M', 20060470, 0, 0, 0, 0, -2, 3 UNION ALLSELECT 'Lim Sreyleak', 'F', 20061007, 0, 0, 0, 0, -2, 3 UNION ALLSELECT 'Lin Sokha Lin', 'F', 20052333, 0, 0, 0, 0, -2, 1 UNION ALLSELECT 'Long Daneth', 'F', 20050317, 0, 0, 0, -2, -2, 2 UNION ALLSELECT 'Long Sochit', 'M', 22030080, 0, 0, 0, -2, -2, 2 UNION ALLSELECT 'Long Sokha', 'F', 20052881, 0, 0, 0, 0, -2, 1 UNION ALLSELECT 'Lor Kim Sreang', 'M', 20051905, 0, 0, 0, 0, -2, 1 UNION ALLSELECT 'Loy Leang Eng', 'M', 22030162, 0, 0, 0, -2, -2, 2 UNION ALLSELECT 'Lun Peng Srorn', 'M', 20060419, 0, 0, 0, 0, -2, 3 UNION ALLSELECT 'Ly Chenda', 'M', 20040157, 0, -2, 0, -2, -1.33, 3 UNION ALLSELECT 'Ly Panga', 'F', 20040215, 0, 0, -2, 0, -2, 1 UNION ALLSELECT 'Ly Rachana', 'F', 20041814, 0, 0, 0, -2, -2, 1 UNION ALLSELECT 'LY Serey Vuth', 'M', 20060683, 0, 0, 0, 0, -2, 3 UNION ALLSELECT 'Ma So Phea', 'F', 20051483, 0, 0, 0, 0, -2, 1 UNION ALLSELECT 'Man Sitha', 'F', 20050141, 0, 0, 0, 0, -2, 1 UNION ALLSELECT 'Mao BoRey', 'F', 20040175, 0, 0, 0, -2, -2, 1 UNION ALLSELECT 'Mao Pisey', 'F', 20061253, 0, 0, 0, 0, -2, 3 UNION ALLSELECT 'Mao Solina', 'F', 20061444, 0, 0, 0, 0, -2, 3 UNION ALLSELECT 'Math Lima', 'F', 6966, 0, 0, 0, -2, -2, 2 UNION ALLSELECT 'Meas Phearom', 'M', 20040211, 0, 0, -2, 0, -2, 1 UNION ALLSELECT 'Meas Sophan N', 'M', 20051120, 0, 0, 0, 0, -2, 1 UNION ALLSELECT 'Meas Varun', 'F', 20040065, 0, 0, 0, -2, -2, 1 UNION ALLSELECT 'Meng Sophearon', 'M', 20050893, 0, 0, 0, 0, -2, 1 UNION ALLSELECT 'Meth Ma Liden', 'F', 20040276, 0, 0, 0, -2, -2, 1 UNION ALLSELECT 'Min Chan', 'F', 20041641, 0, 0, 0, -2, -2, 1 UNION ALLSELECT 'Morm Leakhena', 'F', 20060415, 0, 0, 0, 0, -2, 3 UNION ALLSELECT 'Morn chan leak', 'F', 20041193, 0, 0, -2, 0, -2, 1 UNION ALLSELECT 'Morn Many', 'F', 20040301, 0, 0, 0, -2, -2, 1 UNION ALLSELECT 'Morn phana', 'M', 25030160, 0, -2, 0, -2, -1.33, 3 UNION ALLSELECT 'Moung Samnang', 'M', 20050992, 0, 0, 0, 0, -2, 1 UNION ALLSELECT 'Nal NiMol', 'F', 20040274, 0, 0, 0, -2, -2, 1 UNION ALLSELECT 'Ngeab Chheng', 'M', 20041726, 0, 0, -2, 0, -2, 1 UNION ALLSELECT 'Nget Cheakny', 'F', 20041002, 0, 0, 0, -2, -2, 1 UNION ALLSELECT 'Ngo SiChan', 'F', 20041064, 0, 0, 0, -2, -2, 1 UNION ALLSELECT 'Ngorn Rathna', 'F', 20052091, 0, 0, 0, 0, -2, 1 UNION ALLSELECT 'Ngoun Somaly', 'F', 20060552, 0, 0, 0, 0, -2, 3 UNION ALLSELECT 'Nham Chamroeun', 'M', 20060613, 0, 0, 0, 0, -2, 3 UNION ALLSELECT 'Nhip SokKhen', 'M', 20040190, 0, -2, 0, -2, -1.33, 3 UNION ALLSELECT 'No Theary', 'F', 20041388, 0, 0, 0, -2, -2, 1 UNION ALLSELECT 'Nong sokna', 'F', 20041201, 0, 0, 0, -2, -2, 1 UNION ALLSELECT 'Nou Chamroeun', 'M', 20050735, 0, 0, 0, 0, -2, 1 UNION ALLSELECT 'Nouv Saronn', 'F', 20060657, 0, 0, 0, 0, -2, 3 UNION ALLSELECT 'Ny Malyka', 'M', 20060418, 0, 0, 0, 0, -2, 3 UNION ALLSELECT 'Oeung Naro', 'F', 20050494, 0, 0, 0, -2, -2, 1 UNION ALLSELECT 'ONG KARIN DET', 'M', 28030055, 0, 0, 0, -2, -2, 2 UNION ALLSELECT 'Ou kim horn', 'M', 20040793, 0, -2, 0, -2, -1.33, 3 UNION ALLSELECT 'Ou Sopheak Na', 'F', 20040270, 0, -2, 0, -2, -1.33, 3 UNION ALLSELECT 'Ouk so rida', 'F', 20041172, 0, -2, 0, -2, -1.33, 3 UNION ALLSELECT 'Oum sophorn', 'F', 20041545, 0, 0, 0, -2, -2, 1 UNION ALLSELECT 'Oum Srey Mom', 'F', 20041750, 0, 0, -2, 0, -2, 1 UNION ALLSELECT 'Pak Kap', 'M', 20041896, 0, -2, 0, -2, -1.33, 3 UNION ALLSELECT 'Pech Heng', 'M', 20041762, 0, 0, -2, 0, -2, 1 UNION ALLSELECT 'Pech sam phors', 'F', 20041207, 0, 0, 0, -2, -2, 1 UNION ALLSELECT 'Phai ma kara', 'M', 22030005, 0, 0, 0, -2, -2, 2 UNION ALLSELECT 'Phal pisith', 'M', 20040678, 0, 0, -2, 0, -2, 1 UNION ALLSELECT 'Phauk Satya', 'M', 20060481, 0, 0, 0, 0, -2, 3 UNION ALLSELECT 'Phom Chan', 'F', 20041667, 0, 0, 0, -2, -2, 1 UNION ALLSELECT 'Phon Chan Meardey', 'F', 20040451, 0, 0, 0, -2, -2, 1 UNION ALLSELECT 'Phon Sotheary', 'F', 20040601, 0, 0, 0, -2, -2, 1 UNION ALLSELECT 'Phourng', 'F', 20040010, 0, 0, 0, -2, -2, 1 UNION ALLSELECT 'Pich Veasna', 'M', 20051899, 0, 0, 0, 0, -2, 1 UNION ALLSELECT 'Pin dina', 'F', 20040829, 0, 0, 0, -2, -2, 1 UNION ALLSELECT 'Pith mary neth', 'F', 20041471, 0, 0, 0, -2, -2, 1 UNION ALLSELECT 'Poeu Vuthy', 'M', 20060149, 0, 0, 0, 0, -2, 3 UNION ALLSELECT 'Pok Chanthan', 'M', 8727, 0, 0, 0, -2, -2, 2 UNION ALLSELECT 'Pok Makara', 'F', 20040855, 0, 0, 0, -2, -2, 1 UNION ALLSELECT 'Ponh Long Dy', 'M', 20040277, 0, -2, 0, -2, -1.33, 3 UNION ALLSELECT 'Por Vibol', 'M', 20060495, 0, 0, 0, 0, -2, 3 UNION ALLSELECT 'Pos So Pha', 'M', 20051075, 0, 0, 0, 0, -2, 1 UNION ALLSELECT 'Prach Sela', 'F', 20040602, 0, 0, 0, -2, -2, 1 UNION ALLSELECT 'Prom Sophonn', 'F', 21030283, 0, 0, 0, -2, -2, 2 UNION ALLSELECT 'Prum Phyrun', 'M', 20041000, 0, -2, 0, -2, -1.33, 3 UNION ALLSELECT 'Rang So Thea', 'M', 20051773, 0, 0, 0, 0, -2, 1 UNION ALLSELECT 'Ray Sreymoch', 'F', 20060455, 0, 0, 0, 0, -2, 3 UNION ALLSELECT 'Real Chan Thea', 'M', 20040952, 0, 0, 0, 0, -2, 1 UNION ALLSELECT 'Roeun Lina', 'M', 20041347, 0, 0, 0, 0, -2, 1 UNION ALLSELECT 'Roeung Naro', 'M', 20060451, 0, 0, 0, 0, -2, 3 UNION ALLSELECT 'Ros Salin', 'M', 20060308, 0, 0, 0, 0, -2, 3 UNION ALLSELECT 'Ros SamBo', 'M', 20040757, 0, -2, 0, -2, -1.33, 3 UNION ALLSELECT 'Ros so phea', 'F', 22030067, 0, 0, 0, -2, -2, 2 UNION ALLSELECT 'Run veasna', 'F', 20040933, 0, 0, 0, -2, -2, 1 UNION ALLSELECT 'Ry sok chan', 'M', 20041429, 0, -2, 0, -2, -1.33, 3 UNION ALLSELECT 'Sam An Yden', 'M', 20062811, 0, 0, 0, -2, -2, 1 UNION ALLSELECT 'Sam Chamnap', 'M', 20060604, 0, 0, 0, 0, -2, 3 UNION ALLSELECT 'SamBath Samnang', 'F', 20040399, 0, 0, -2, 0, -2, 1 UNION ALLSELECT 'Samrith so', 'F', 20040831, 0, 0, 0, -2, -2, 1 UNION ALLSELECT 'San Kim Leang', 'F', 20040002, 0, 0, 0, -2, -2, 1 UNION ALLSELECT 'Sann Sary', 'M', 20062843, 0, 0, 0, 0, -2, 3 UNION ALLSELECT 'Sao So Vorn', 'M', 20050170, 0, 0, 0, 0, -2, 1 UNION ALLSELECT 'Sar srey neang', 'F', 20041199, 0, 0, 0, -2, -2, 1 UNION ALLSELECT 'Savann Sophea', 'M', 20060057, 0, 0, -2, 0, -2, 1 UNION ALLSELECT 'Say Sova Thana', 'F', 20040188, 0, 0, 0, -2, -2, 1 UNION ALLSELECT 'Seang Ratha', 'M', 20040760, 0, 0, -2, 0, -2, 1 UNION ALLSELECT 'Sek Phanet', 'M', 20041241, 0, -2, 0, -2, -1.33, 3 UNION ALLSELECT 'Sem chak riya', 'F', 20040799, 0, 0, 0, -2, -2, 1 UNION ALLSELECT 'Seng Bo ka', 'F', 20041309, 0, 0, 0, -2, -2, 1 UNION ALLSELECT 'SENG CHAN DA', 'M', 20040558, 0, 0, -2, 0, -2, 1 UNION ALLSELECT 'Seng mar dy', 'F', 20040954, 0, -2, 0, -2, -1.33, 3 UNION ALLSELECT 'Seng Pisey', 'M', 20040194, 0, -2, 0, -2, -1.33, 3 UNION ALLSELECT 'Seng Rachana', 'F', 20061008, 0, 0, 0, 0, -2, 3 UNION ALLSELECT 'Seng So Phakdey', 'M', 20052104, 0, 0, 0, 0, -2, 1 UNION ALLSELECT 'Seng tan', 'M', 20040889, 0, 0, -2, 0, -2, 1 UNION ALLSELECT 'Serey ma len', 'F', 20040527, 0, 0, 0, -2, -2, 1 UNION ALLSELECT 'Sieng Bun Ny', 'M', 20060639, 0, 0, 0, 0, -2, 3 UNION ALLSELECT 'Sim Sothy', 'F', 20040180, 0, 0, 0, -2, -2, 1 UNION ALLSELECT 'Sin Bun Chheang', 'M', 20052505, 0, 0, 0, 0, -2, 1 UNION ALLSELECT 'Sin Son Vatey', 'F', 20060351, 0, 0, 0, 0, -2, 3 UNION ALLSELECT 'Sngourn Sok Ch', 'F', 20051768, 0, 0, 0, 0, -2, 1 UNION ALLSELECT 'So Phak Ny', 'F', 20060555, 0, 0, 0, 0, -2, 3 UNION ALLSELECT 'Soeung amra', 'F', 20041513, 0, 0, 0, -2, -2, 1 UNION ALLSELECT 'Soeung Mora', 'F', 20041059, 0, 0, 0, -2, -2, 1 UNION ALLSELECT 'Sok chak riya', 'F', 21030082, 0, 0, 0, -2, -2, 2 UNION ALLSELECT 'Sok Heng', 'M', 20061884, 0, 0, 0, 0, -2, 3 UNION ALLSELECT 'Sok sara voeun', 'M', 20040802, 0, -2, 0, -2, -1.33, 3 UNION ALLSELECT 'Sok seila', 'M', 20041446, 0, 0, 0, -2, -2, 1 UNION ALLSELECT 'Sok So Maline', 'F', 20060480, 0, 0, 0, 0, -2, 3 UNION ALLSELECT 'Sok Visal', 'F', 20041062, 0, 0, 0, -2, -2, 1 UNION ALLSELECT 'Som Molika', 'F', 20061680, 0, 0, 0, 0, -2, 3 UNION ALLSELECT 'Som Panchakmor', 'F', 20060633, 0, 0, 0, 0, -2, 3 UNION ALLSELECT 'Som Sa ra', 'M', 20041305, 0, -2, 0, -2, -1.33, 3 UNION ALLSELECT 'Som So Pheak', 'M', 20040559, 0, 0, -2, 0, -2, 1 UNION ALLSELECT 'Som Sophal', 'F', 20060646, 0, 0, 0, 0, -2, 3 UNION ALLSELECT 'Som Suy', 'M', 20040036, 0, 0, -2, 0, -2, 1 UNION ALLSELECT 'Som Tola', 'M', 20060364, 0, 0, 0, 0, -2, 3 UNION ALLSELECT 'Sor So Ny', 'F', 20040185, 0, 0, 0, -2, -2, 1 UNION ALLSELECT 'Soun Sophal', 'F', 20060562, 0, 0, 0, 0, -2, 3 UNION ALLSELECT 'Sovath Seyha', 'M', 20050953, 0, 0, 0, 0, -2, 1 UNION ALLSELECT 'Srey Sovatey', 'F', 20060478, 0, 0, 0, 0, -2, 3 UNION ALLSELECT 'Srey Vanna', 'F', 22030018, 0, 0, 0, -2, -2, 2 UNION ALLSELECT 'Srin serey', 'M', 20040863, 0, 0, 0, -2, -2, 1 UNION ALLSELECT 'Srong Samnong', 'M', 20060273, 0, 0, 0, 0, -2, 3 UNION ALLSELECT 'Sroy Eak Heng', 'M', 20060583, 0, 0, 0, 0, -2, 3 UNION ALLSELECT 'Sum Chhor Woan', 'F', 20051087, 0, 0, 0, 0, -2, 1 UNION ALLSELECT 'Sun Da Mean', 'M', 20040420, 0, 0, -2, 0, -2, 1 UNION ALLSELECT 'Taing Pengny', 'M', 7724, 0, 0, 0, -2, -2, 2 UNION ALLSELECT 'Tan Lida', 'F', 20062446, 0, 0, 0, 0, -2, 3 UNION ALLSELECT 'Tang lay chay', 'M', 20040790, 0, 0, 0, -2, -2, 1 UNION ALLSELECT 'Tang muoy ngim', 'F', 20040686, 0, 0, 0, -2, -2, 1 UNION ALLSELECT 'Tav Dany', 'F', 20040230, 0, 0, 0, -2, -2, 1 UNION ALLSELECT 'Te Sokuntheary', 'F', 20060503, 0, 0, 0, 0, -2, 3 UNION ALLSELECT 'Tep Neavea', 'M', 22030102, 0, 0, 0, -2, -2, 2 UNION ALLSELECT 'Tha Sreymom', 'F', 20062445, 0, 0, 0, 0, -2, 3 UNION ALLSELECT 'Than ffff', 'M', 20040193, 0, -2, 0, -2, -1.33, 3 UNION ALLSELECT 'Thang Ly Hor', 'M', 20052809, 0, 0, 0, 0, -2, 1 UNION ALLSELECT 'Thay Meng Heang', 'M', 20060488, 0, 0, 0, 0, -2, 3 UNION ALLSELECT 'Thel rattana', 'M', 20040518, 0, -2, 0, -2, -1.33, 3 UNION ALLSELECT 'Thlork chan', 'F', 22030153, 0, 0, 0, -2, -2, 2 UNION ALLSELECT 'Tho Sopheanith', 'M', 20060440, 0, 0, 0, 0, -2, 3 UNION ALLSELECT 'Thou Chaktodara', 'F', 20060323, 0, 0, 0, 0, -2, 3 UNION ALLSELECT 'Thoul Thavona', 'F', 20060638, 0, 0, 0, 0, -2, 3 UNION ALLSELECT 'Thuch di na', 'F', 20040826, 0, 0, 0, -2, -2, 1 UNION ALLSELECT 'Thun Sokunthea', 'F', 20060512, 0, 0, 0, 0, -2, 3 UNION ALLSELECT 'Thy Sokha', 'F', 20041349, 0, 0, 0, -2, -2, 1 UNION ALLSELECT 'Tiw Sok Leng', 'F', 20041232, 0, 0, 0, -2, -2, 1 UNION ALLSELECT 'Touch Kakda', 'F', 20041355, 0, -2, 0, -2, -1.33, 3 UNION ALLSELECT 'Touch Pisakha', 'M', 20050922, 0, 0, 0, 0, -2, 1 UNION ALLSELECT 'Touch Vantha', 'F', 20060494, 0, 0, 0, 0, -2, 3 UNION ALLSELECT 'Ty Oudam', 'M', 20051021, 0, 0, 0, 0, -2, 1 UNION ALLSELECT 'Ty Sokun Virya', 'F', 20060684, 0, 0, 0, 0, -2, 3 UNION ALLSELECT 'Uk Sengly', 'F', 21030108, 0, 0, 0, -2, -2, 2 UNION ALLSELECT 'Ul Sophon', 'M', 20060497, 0, 0, 0, 0, -2, 3 UNION ALLSELECT 'Un Rattana', 'F', 20040138, 0, 0, 0, -2, -2, 1 UNION ALLSELECT 'Uy Dalune', 'F', 20061782, 0, 0, 0, 0, -2, 3 UNION ALLSELECT 'VA SOKLEANG', 'F', 20060286, 0, 0, 0, 0, -2, 3 UNION ALLSELECT 'Vann Srey Pao', 'F', 20040176, 0, 0, 0, -2, -2, 1 UNION ALLSELECT 'Vann Voleak', 'F', 20040005, 0, 0, 0, -2, -2, 1 UNION ALLSELECT 'Viseth Pech', 'M', 20060384, 0, 0, 0, 0, -2, 3 UNION ALLSELECT 'Vong Kek Sokorn', 'M', 20041068, 0, -2, 0, -2, -1.33, 3 UNION ALLSELECT 'Vorn Bunna Rith', 'M', 20040015, 0, -2, 0, -2, -1.33, 3 UNION ALLSELECT 'Yem Vibon', 'M', 20060520, 0, 0, 0, 0, -2, 3 UNION ALLSELECT 'Yin Somolina', 'F', 20060153, 0, 0, 0, 0, -2, 3 UNION ALLSELECT 'You Leang', 'M', 20060508, 0, 0, 0, 0, -2, 3 UNION ALLSELECT 'Yuk Sengchann', 'M', 20062691, 0, 0, 0, 0, -2, 3-- this is where your query beginsselect (select count(*) from @test x where x.studentid <= t.studentid) rowNum, t.FullName, t.Sex, t.StudentID, t.[C program], t.[VB.Net], t.[ASP.Net], t.Java, t.Average, t.Rank, (select count(distinct x.average) from @test x where x.average >= t.average) newRankfrom @test torder by t.studentid Peter LarssonHelsingborg, Sweden |
 |
|
seyha_moth
Yak Posting Veteran
74 Posts |
Posted - 2006-12-07 : 05:44:33
|
If you do like this,column subject can't fix that is why vb.net,java,asp.net can have subject increase and decreaseseyha moth |
 |
|
SwePeso
Patron Saint of Lost Yaks
30421 Posts |
|
SwePeso
Patron Saint of Lost Yaks
30421 Posts |
Posted - 2006-12-07 : 06:15:51
|
[code]-- prepare test datacreate table #test (FullName varchar(5), Sex char(1), StudentID smallint, EnSubjectName varchar(10), Score tinyint)insert #testselect 'seyha', 'M', 4578, 'Vb.net', 20 union allselect 'seyha', 'M', 4578, 'java', 50 union allselect 'peso', 'M', 999, 'Vb.net', 90 union allselect 'peso', 'M', 999, 'java', 20 union allselect 'peso', 'M', 999, 'Sql server', 100 union allselect 'chan', 'M', 7444, 'java', 60 union allselect 'chan', 'M', 7444, 'Sql server', 50-- this is your codeCREATE TABLE #Aggregates ( RowText VARCHAR(50), ColumnText VARCHAR(50), CellData MONEY )INSERT INTO #Aggregates ( RowText, ColumnText, CellData )SELECT StudentID, EnSubjectName, ScoreFROM #TestCREATE UNIQUE INDEX IX_Aggregates ON #Aggregates (RowText, ColumnText, CellData) CREATE TABLE #Columns ( ColumnIndex INT IDENTITY (0, 1), ColumnText VARCHAR(50) ) INSERT INTO #Columns ( ColumnText )SELECT DISTINCT ColumnTextFROM #Aggregates (INDEX(IX_Aggregates), NOLOCK)ORDER BY ColumnText CREATE UNIQUE INDEX IX_Columns ON #Columns (ColumnIndex, ColumnText) CREATE TABLE #Rows ( RowText INT, Average SMALLMONEY, Rank INT, rowNum INT ) INSERT INTO #Rows ( RowText )SELECT DISTINCT RowTextFROM #Aggregates (INDEX(IX_Aggregates), NOLOCK) CREATE UNIQUE INDEX IX_Rows ON #Rows (RowText) DECLARE @ColumnIndex INT, @MaxColumnIndex INT, @ColumnText VARCHAR(50), @SQL VARCHAR(1000) SELECT @ColumnIndex = 0, @MaxColumnIndex = MAX(ColumnIndex)FROM #Columns WHILE @ColumnIndex <= @MaxColumnIndex BEGIN SELECT @ColumnText = ColumnText FROM #Columns WHERE ColumnIndex = @ColumnIndex SELECT @SQL = 'ALTER TABLE #Rows ADD ' + QUOTENAME(@ColumnText) + ' INT' EXEC (@SQL) SELECT @SQL = 'UPDATE #Rows SET ' + QUOTENAME(@ColumnText) + ' = #Aggregates.CellData FROM #Aggregates (INDEX(IX_Aggregates), NOLOCK) , #Columns (INDEX(IX_Columns), NOLOCK) WHERE #Rows.RowText = #Aggregates.RowText AND #Columns.ColumnText = #Aggregates.ColumnText AND #Columns.ColumnIndex = ' + CAST(@ColumnIndex AS VARCHAR(12)) EXEC (@SQL) SELECT @ColumnIndex = @ColumnIndex + 1 ENDDROP TABLE #ColumnsDROP TABLE #Aggregatesupdate r set r.average = (select avg(score) from #test t where t.studentid = r.rowtext)from #rows rupdate r set r.rownum = (select count(*) from #rows x where x.rowtext <= r.rowtext)from #rows rupdate r set r.rank = (select count(*) from #rows x where x.average >= r.average)from #rows rSELECT t.fullname, t.studentid, r.*FROM #Rows rinner join (select distinct studentid, fullname from #test) t on t.studentid = r.rowtextORDER BY r.RowTextDROP TABLE #Rowsdrop table #test[/code]Peter LarssonHelsingborg, Sweden |
 |
|
seyha_moth
Yak Posting Veteran
74 Posts |
Posted - 2006-12-08 : 02:24:06
|
Thank you for your reply and I'm sorry for my mistakes and I hope that you don't be mind especially help me to correct my mistakes.According to your queries,I run it then It makes the wanted result,but I have more recrods in my tables,so I have to input select 'seyha', 'M', 4578, 'Vb.net', 20 union allselect 'seyha', 'M', 4578, 'java', 50 union allselect 'peso', 'M', 999, 'Vb.net', 90 union allselect 'peso', 'M', 999, 'java', 20 union allselect 'peso', 'M', 999, 'Sql server', 100 union allselect 'chan', 'M', 7444, 'java', 60 union all.. .select 'chan', 'M', 7444, 'Sql server', 50Until finish,moreover,It will be had more and more records that user input and update it.Could you have more method to correct it?For me,I want to create Cursor to do itI look forward to hearing from youThank you in advanceGood Luck and Succeed your work.seyha moth |
 |
|
SwePeso
Patron Saint of Lost Yaks
30421 Posts |
Posted - 2006-12-08 : 08:12:36
|
No, you only take the code from the point where it says "This is your code".Then you alter the names of columns and tables in this sectionINSERT INTO #Aggregates ( RowText, ColumnText, CellData )SELECT StudentID, EnSubjectName, ScoreFROM #Test to get the data from YOUR tables and YOUR columns in YOUR environment.Good luck!Peter LarssonHelsingborg, Sweden |
 |
|
seyha_moth
Yak Posting Veteran
74 Posts |
Posted - 2006-12-08 : 22:12:40
|
Thank you for your reply.I solve succesfully with your helpI hope that I can help if you have problemsThank you.Good ByeGood Luck and Succeed what you wantseyha moth |
 |
|
seyha_moth
Yak Posting Veteran
74 Posts |
Posted - 2006-12-08 : 22:50:19
|
Oh,Sorry SirI make the error when I change #test to vX_ScoreWithStudentInfo(this is the sample view that i told you already).It show that(863 row(s) affected)Msg 1505, Level 16, State 1, Line 1CREATE UNIQUE INDEX terminated because a duplicate key was found for index ID 2. Most significant primary key is '25030040'.The statement has been terminated.According to my test,I think that it make error in lineCREATE UNIQUE INDEX IX_Aggregates ON #Aggregates (RowText, ColumnText, CellData)How Can I do?Can you help me?I look forward to hearing fromThank you in advanceGood Luck and Succeed your work.seyha moth |
 |
|
seyha_moth
Yak Posting Veteran
74 Posts |
Posted - 2006-12-09 : 04:19:12
|
Sorry,Sir I find the above problem by my self,but the its result show how to I don't want because the ordered columnIt show: FullName-------StudentID-------RowText-----Average---Rank---rowNum---Access----vb.net----javaI want rowNum----FullName----Sex---StudentID---Access---vb.net---java---Average---RankI try find the solution with it,but I think that you can help meI look forward to hearing from youThank you in advanceGood Luck!!seyha moth |
 |
|
seyha_moth
Yak Posting Veteran
74 Posts |
Posted - 2006-12-11 : 20:39:40
|
Can you help me?seyha moth |
 |
|
madhivanan
Premature Yak Congratulator
22864 Posts |
Posted - 2006-12-12 : 05:37:22
|
Isnt it just you need to place the columns in the correct order in the SELECT statement?MadhivananFailing to plan is Planning to fail |
 |
|
|
|
|