查詢不同課程成績相同的學生
『壹』 資料庫中修改同一學生不同課程成績的修改語句是什麼啊
要找專業人員很安全
『貳』 SQL查找3門不同課程成績相同的學生學號,課程號,成績
表結構啊,不貼表結構沒辦法給語句的
『叄』 SQL查找3門不同課程成績相同的學生學號、課程號、成績
select 學號,姓名,課程,課程號,成績 from 學生成績表 where
學號 in (select 學號 from 學生成績表 group by 學號,成績 having count(1)=3)
『肆』 資料庫查詢 查詢「001」課程比「002」課程成績高的所有學生的學號
分析如下:
--1selectSC1.S#fromSCSC1JOINSCSC2ONSC1.S#=SC2.S#
WHERESC1.C#='001'ANDSC2.C#='002'ANDSC1.score>SC2.score
--2selectS#,AVG(score)
平均成績yS#
havingAVG(score)>60--3selectStudent.S#,
Sname,COUNT(*)選課數,SUM(score)總成績
fromStudentJOINSConStudent.S#=SC.S#
groupbyStudent.S#,Sname
(4)查詢不同課程成績相同的學生擴展閱讀:
資料庫操作的注意事項
1、對查詢進行優化,要盡量避免全表掃描,首先應考慮在 where 及 order by 涉及的列上建立索引。
2、應盡量避免在 where 子句中對欄位進行 null 值判斷,否則將導致引擎放棄使用索引而進行全表掃描,如:select id from t where num is null
最好不要給資料庫留NULL,盡可能的使用NOT NULL填充資料庫.
備注、描述、評論之類的可以設置為NULL,其他的,最好不要使用NULL。
不要以為NULL不需要空間,比如:char(100)型,在欄位建立時,空間就固定了,不管是否插入值(NULL也包含在內),都是佔用100個字元的空間的,如果是varchar這樣的變長欄位,null不佔用空間。
可以在num上設置默認值0,確保表中num列沒有null值,然後這樣查詢:select id from t where num = 0
3、應盡量避免在 where 子句中使用 != 或 <> 操作符,否則將引擎放棄使用索引而進行全表掃描。
4、應盡量避免在 where 子句中使用 or 來連接條件,如果一個欄位有索引,一個欄位沒有索引,將導致引擎放棄使用索引而進行全表掃描,如:select id from t where num=10 or Name = 'admin'
可以這樣查詢:
select id from t where num = 10
union all
select id from t where Name = 'admin'
5、in 和 not in 也要慎用,否則會導致全表掃描,如:select id from t where num in(1,2,3)
對於連續的數值,能用 between 就不要用 in 了:select id from t where num between 1 and 3
很多時候用exists 代替 in是一個好的選擇:select num from a where num in(select num from b)
用下面的語句替換:select num from a where exists(select 1 from b where num=a.num)
6、下面的查詢也將導致全表掃描:select id from t where name like 『%abc%』
若要提高效率,可以考慮全文檢索。
7、如果在 where 子句中使用參數,也會導致全表掃描。因為SQL只有在運行時才會解析局部變數,但優化程序不能將訪問計劃的選擇推遲到運行時;它必須在編譯時進行選擇。然 而,如果在編譯時建立訪問計劃,變數的值還是未知的,因而無法作為索引選擇的輸入項。
『伍』 使用sql語言查詢下列語句,特急,求答案,謝謝了
很簡單 但這也太多了 !
別說一個都不會啊
還沒分,那會有人給你做啊
你挑出幾個不會的 再問吧
『陸』 如何用SQL查詢「假若統一學生不同課程的成績相同,查詢該學生的學號、所選課程的課
是同一學生不同課程的成績相同吧,可以使用自連內接實現容:
select t1.xuehao,t1.kecheng,t1.chengji from tablename t1 join tablename t2 on t1.xuehao = t2.xuehao where t1.chengji=t2.chengji and t1.xuehao <> t2.xuehao
『柒』 採用自身連接的方法,查找不同課程成績相同的學生的學號,課程號和成績.
這種寫法是不對抄的,如果分數相同,課程相同,人不同的情況是體現不出來的
我用的表學生id sno 課程id cno 成績score
SELECT SC_WEI.*
FROM (
SELECT DISTINCT(CNO)
,SCORE
FROM SC_WEI
WHERE SCORE IN(
SELECT SCORE
FROM (
SELECT SCORE
,COUNT(SCORE) CNT
FROM SC_WEI
GROUP BY SCORE)
WHERE CNT > 1)
GROUP BY SCORE
,CNO ) T
INNER JOIN SC_WEI ON SC_WEI.CNO = T.CNO
AND SC_WEI.SCORE = T.SCORE
『捌』 用sql語言進行查詢
親,你這個也太高難度了吧,幫你解答完,都不知道需要多少時間啊,最好是自己做吧
『玖』 怎樣查詢所學每一門課程成績均高於等於該課程平均成績的學生的姓名
搜一下:怎樣查詢所學每一門課程成績均高於等於該課程平均成績的學生的姓名
『拾』 SQL怎樣同時查詢多個學生多個科目的成績
這個用到行轉列
SELECT
`姓名編號`, MAX( CASE
WHEN course='項目1' THEN
"內容" END
) AS '項目1', MAX( CASE
WHEN course='項目2' THEN
"內容" END
) AS '項目2',
MAX( CASE
WHEN course='項目3' THEN
"內容" END
) AS '項目3' FROM
studentGROUP BY `姓名編號`
你可以參考下網站:網頁鏈接