記事のディレクトリ
- 序文
- 1.質問ドライ
- 第二に、問題を解決するためのステップ
-
- 1.コースタプル( 'c8'、 'vc ++'、 'T6')をリレーションcに挿入します。
- 2.教えられたすべてのコースで平均スコアが80を超える教師の名前を取得し、取得した値をFACULTY(TNAME)に送信します。
- 3.SCで成績のない選択タプルを削除します
- 4.LIU先生のコースを受講している女子学生のタプルをすべて削除します
- 5.MATHSのすべての不合格グレードを60に変更します
- 6.平均を下回る女子学生の成績を5%向上させる
- 7. C4 <= 70の場合、5%増加し、それ以外の場合は4%増加します(2つの方法を使用)
- 8. SCでは、特定の成績がすべてのコースの平均成績よりも低い場合、5%増加します
- 総括する
序文
この記事で使用されているS、SC、C、およびTはすべて、教育で使用されている従来の教育データベースであり、属性については説明していません。
1.質問ドライ
SQL更新ステートメントを試して、教育データベースでリレーショナルS SCCTの更新操作を表現してください。
第二に、問題を解決するためのステップ
1.コースタプル( 'c8'、 'vc ++'、 'T6')をリレーションcに挿入します。
コードは次のように表示されます。
INSERT INTO C
VALUES(‘C8’,’VC++’,’T6’);
2.教えられたすべてのコースで平均スコアが80を超える教師の名前を取得し、取得した値をFACULTY(TNAME)に送信します。
コードは次のように表示されます。
INSERT INTO FACULTY(TNAME)
SELECT DISTINCT TNAME
FROM(SELECT TNAME,C.C#,AVG(SCORE)
FROM T,C,SC
WHERE T.T#=C.T#AND C.C#=SC.C#
GROUP BY TNAME,C.C#)
AS RESULT(TNAME,C#,AVG—SCORE)AS X
WHERE 80<=ALL(SELECT AVG—SCORE
FROM RESULT AS Y
WHERE Y.TNAME=X.TNAME);
3.SCで成績のない選択タプルを削除します
DELETE FROM SC WHERE SCORE IS NULL;
4.LIU先生のコースを受講している女子学生のタプルをすべて削除します
DELETE FROM SC
WHERE S# IN(SELECT S# FROM S WHERE SEX=’F’)
AND C# IN(SELECT C# FROM C.T WHERE C.T#=T.T#AND TNA
5.MATHSのすべての不合格グレードを60に変更します
UPDATE SC
SET SCORE=60
WHERE SCORE<60
AND C# IN(SELECT C#FROM C WHERE CNAME=’MATHS’);
6.平均を下回る女子学生の成績を5%向上させる
UPDATE SC
SET SCORE=SCORE*1.05
WHERE S # IN(SELECT S# FROM S WHERE SEX='F’)
AND SCORE<(SELECT AVG(SCORE)FROM SC);
7. C4 <= 70の場合、5%増加し、それ以外の場合は4%増加します(2つの方法を使用)
UPDATE SC
SET SCORE=SCORE*1.04
WHERE C#=’C4’AND SCORE>70;
UPDATE SC
SET SCORE=SCORE*1.05
WHERE C#=’C4’AND SCORE<=70;
UPDATE SC
SET SCORE=SCORE*CASE
WHEN SCORE>70 THEN 1.O4
ELSE l.05
END
WHERE C#=’C4’:
8. SCでは、特定の成績がすべてのコースの平均成績よりも低い場合、5%増加します
UPDATE SC
SET SCORE=SCORE*1.05
WHERE SCORE<(SELECT AVG(SCORE)
FROM SC);
総括する
記事は急いで公開されました、私を訂正してください
!