I have a table named "Student" which contains four columns and three rows.I want to see just the first row only from the "Student" table and the marks should be calculated.
Here is my table
sno smark1 smark2 smark3
1 60 60 60
2 70 70 70
3 90 90 90
The Ouput Should be:
sno smarks(smark1+ smark2+smark3)
1 180
2 210
3 270
I can't get ur question!!
What is the result u expecting from this table?
If you need only the first row,
Select Top 1 * from Student
|||This would give you the first row based on just the sno. Depending on if you would want to see row 1 or 3 would be dependent on the order by. So to get sno[1] use "order by sno" alternately for the last sno[3] "order by sno desc".
Code Snippet
Select top 1 sno from student order by sno
or
Select top 1 sno from student order by sno desc
|||You can do this by simply:
select sno, coalesce(smark1,0) + coalesce(smark2,0) + coalesce(smark3,0) as smarks
from yourTable
The coalesces are done to remove NULLS from the math.
In reality, it would be better if you build your table as:
studentMarks
============
studentNumber
sequenceNumber
dateOfScore
mark
Then you can sum any number of marks like this:
select studentNumber, sum(mark)
from studentMarks
group by studentNumber
sql
No comments:
Post a Comment