-
呵呵,你是一堆問題:
優秀,好......(人數)每級:
首先,假設您的分數是 100 分制,優秀,即 85 分以上,等等......
所以:選擇課程,count(*)作為數字,'優秀'作為類別。
從等級。
其中得分 85
按課程分組。
unionselect course,count(*) 作為數字,'good' 作為類別。
從等級。
其中分數>> 70,分數 <=85
按課程分組。
unionselect course, count(*) as number, 'pass' as category.
從等級。
其中分數>> 60,分數 <=70
按課程分組。
分布及百分比:
它必須根據上述結果進行計算。
我們先來看看總人數:從分數中選擇count(*)作為總人數。
重新計算百分比:
選擇課程、參加人數*100 作為每個級別其他人人數的百分比,按課程、類別分組。
其餘的統計資料是相似的。
-
乍一看,就是書裡的書名,下課後找答案,都在那裡!
-
select name,sum(score) as allscore from stuscore group by name order by allscore
這是問題的答案:
-
好吧,但如果這個問題是純粹的,那麼在第二個答案中巢狀是完全沒有必要的,只會降低執行效率。
-
從執行結果來看,兩種方式都是正確的。
但如果有人在工作中寫第二種型別,恐怕不會被打出......由他們的同事
-
我揉了揉,專家寫的不對。
選擇 ,,從表名 a 中,從表名中按 CNO) B 組中選擇 SNO,min(score) 分數
where and
-
假設表名是 sc
選擇名稱,cname作為分數最低的科目,從sc中得分,選擇sname作為名稱,min(score)作為sc的分數
group by sname)t1
其中得分。
-
我理解標題的含義:
在 3-105 課程中,分數高於數字 109 分數的學生的所有記錄。
select *
from score a
where sno in (
select sno
from score b
where cno='3-105'
and >(select degree from score where sno='109' and cno = '3-105'))
-
從表名中選擇學生號,分數 其中 score=(從表名中選擇最大(分數);
-
查詢每個人的最高分sql:
首先,使用 group by 和 max 獲取最高分和科目,然後檢視分數表以查詢具有相同科目和分數的記錄。
select b.* from (select max(score) t,course from score group by course) a,score b where and
第二種方法:先獲取同一科目的最高分,然後查詢分數表,找到得分最高的記錄 從分數中選擇 * where score=(select max(score) from score where course=
第三種:在分數表中,當主題相同時,沒有分數低於其他記錄分數的記錄從不存在的分數中選擇*(從分數中選擇*,其中和
-
從表名中選擇學生號,分數 其中 score=(從表名中選擇最大(分數);
-
在這個部落格中,有乙個關於每個科目得分最高的學生的資訊查詢,子查詢是乙個科目,以前沒有搜尋過,今天發出來,讓大家少走幾步。
-
你的資訊不足以讓我了解訊息來源是如何給你答案的,bai 是顯而易見的,如果第一名必須是和。
第二名也有並列
以上所有使用 daotop 的答案都是錯誤的。
因此,建議您給出表格結構,以便我幫助您分析問題。
或者你試試這個:
select * from tbl_score where score =
select distinct top 1 score from tbl_score where score not in(
select distinct top 1 score from tbl_score order by score desc
order by score desc
我已經在我自己的臨時桌子上測試了它,它應該足以檢查第二名的結果,包括所有並列第二名的人。
我想知道這是否是房東想要的?
datasourceid 是與資料來源控制項一起實現的,資料來源是使用的資料集。 刪除 = sqa; 加號 = ds; 此外,我沒有你 = sqa; 用法,以下值應為資料來源控制項的 ID
sele date,a.win, b, lose from table, (sele date count(result) as win from table where rsult='贏'分組按日期 )a,,(sele date count(result) as pay from table where rsult='支付'按日期分組 )b 其中表。date=表。 >>>More
答案是肯定的; 只需將行用於列即可。
靜態寫作。 select unit,sum(case when year(time)=2005 and datepart(q,time)=1 then value else 0 end) as 2005 a quarter,sum(case when year(time)=2005 and datepart(q,time)=2 then value else 0 end) as 2005 a quarter ,.. >>>More
SQL2008 語句:
當 num = 1 時選擇 name = case then a else''結束,成績,科目。 >>>More