データベース - 単一テーブルのクエリ

[3.29]実施例番号は、学生201 215 121の詳細を学ぶクエリ。

SELECT *
FROM Student
WHERE Sno LIKE '201215121';

等価に

SELECT *
FROM Student
WHERE Sno = '201215121';

ここに画像を挿入説明
[3.30]すべてのケースを照会するために劉の学生の名前、学生番号、性別を某。

SELECT Sname, Sno, Ssex
FROM Student
WHERE  Sname LIKE '刘%';

文字列照合の一般的なフォーマット

 [NOT] LIKE<匹配串>[ESCAPE<换码字符>]

つまり、指定された属性列タプル<一致文字列>試合の値。<マッチ文字列> _完全な文字列がワイルドカード%を含有してもよいかもしれません。
ここで、%は、任意の長さの文字列を表します。
_任意の1文字を表します。

これは、指定された属性名で必要とされる表示データの一部だけを実現することができます。
ここに画像を挿入説明
[3.31]例のクエリ名「劉」と2つの漢字の学生の名前のフルネーム。

 SELECT Sname
 FROM Student
 WHERE Sname LIKE '刘_';

ここに画像を挿入説明
注:必要に応じて漢字に代わって、異なる文字の環境、異なる数_。
データベースは、ASCII文字セット、文字_、2つ必要である場合には
、データベースGBK文字セットを、文字は_必要と
_は、文字、およびバイトの位相差を表しています。
ASCIIコードの下では、文字だけで1つのバイトが、文字は2つの文字を必要としています。
次にGBK、文字は2つのバイトを必要としますが、唯一の漢字を必要としています。

場合SQLserverでのクエリ文字セット

SELECT COLLATIONPROPERTY('Chinese_PRC_Stroke_CI_AI_KS_WS', 'CodePage')

ここに画像を挿入説明
936はGBKコードを表します。
[3.32] 2番目の単語での例のクエリ名は「正、」学生の名前と学生番号です。

SELECT Sname,Sno
FROM Student
WHERE  Sname LIKE '_阳%';

ここに画像を挿入説明
すべてのケースを照会する[3.33]は劉、生徒の名前、学生番号、性別を某ありません。

 SELECT Sname,Sno,Ssex
 FROM Student
 WHERE Sname NOT LIKE '刘%';

ここに画像を挿入説明
[3.34]例クエリDB_Designコース番号やコースのクレジットを。

SELECT Cno,Ccredit
FROM Course
WHERE Cname LIKE 'DB\_Design'ESCAPE '\'; 

ここに画像を挿入説明
[3.35]例の「DB_」で始まるクエリ、そしてもちろん私の詳細の最初の3文字までのカウントダウン。

SELECT *
FROM Course
WHERE Cname LIKE 'DB\_%i__'ESCAPE '\';

ここに画像を挿入説明
[3.36]は選択科目の学生の試験の後、一部の患者には参加しなかったので、選択科目レコードがありますが、ではないテストの点数をしました。クエリは、生徒の成績や学校の数に対応するコース番号の欠如します。

SELECT Sno,Cno
FROM SC
WHERE Grade IS NULL;

[3.37]は、学生番号とコース番号が実りされているすべてのケースを検索します。

SELECT Sno,Cno
FROM SC
WHERE Grade IS NOT NULL;

[3.38]例は、学生の20歳名の年齢でコンピュータサイエンス学部を照会します。

SELECT Sname
FROM Student
WHERE Sdept='CS'AND Sage<20;

ここに画像を挿入説明
[3.39]クエリ選択科目例は、第3のコースの学生はスコアの降順で番号とその結果、クエリ結果を学びます。

SELECT Sno,Grade
FROM SC
WHERE Cno= ' 3 '
ORDER BY Grade DESC;

ヌルため、ソート順は、特定のシステムの実装によって決定された表示。
GROUP BYは:
オブジェクトの集約関数を精製
集約関数は、全体のクエリの結果に適用されていないパケットのクエリの結果場合、
クエリ結果をグループ化、集約関数は、各グループに適用され
、パケットの1つ以上の列の指定された値値に等しく設定されている
クエリの結果は、線が昇順に配置されている行番号、年齢に応じて降順に同じ列車の学生によって、すべての学生の実施例を[3.40]出会います。

SELECT *
FROM Student
ORDER BY Sdept ASC, Sage DESC;  

ここに画像を挿入説明
【3.41実施例は、学生の総数を問い合わせます。

SELECT COUNT(*)
FROM  Student; 

ここに画像を挿入説明
[3.42]例課程に在籍する学生の数を照会します。

SELECT COUNT(DISTINCT Sno)
FROM SC;

学生の成績平均点[3.43]実施例1コース。

SELECT AVG(Grade)
FROM SC
WHERE Cno='1';

[クエリ]の選択科目の学生1号最高得点の3.44例。

SELECT MAX(Grade)
FROM SC
WHERE Cno='1';

ここに画像を挿入説明
[3.45]学生スコアの彼らの総数の201 215 012科目の問い合わせケース。

SELECT SUM(Ccredit)
FROM  SC,Course
WHERE Sno='201215122' AND SC.Cno=Course.Cno; 

[3.46]患者は各コース番号と科目の対応する数を求めます。

SELECT Cno,COUNT(Sno)
FROM SC
GROUP BY Cno; 

[3.47]例のクエリは、学生数3以上のコースを登録しました。

SELECT Sno
FROM SC
GROUP BY Sno
HAVING COUNT(*)>3; 

[例] 3.48等級点平均クエリは、以上の学生番号、成績平均点の90分に等しいです。

SELECT Sno,AVG(Grade)
FROM SC
GROUP BY Sno
HAVING AVG(Grade)>=80;

ここに画像を挿入説明
注重合後に演技HAVING、重合の前に演技。

リリース6元記事 ウォンの賞賛5 ビュー2776

おすすめ

転載: blog.csdn.net/jiesfriend/article/details/104818484