第一期:
學生表(學生id,姓名,性別,分數(shù)) )student(s_id, name, sex, score)
班級表(班級id,班級名稱) class(c_id, c_name)
學生班級表(班級id,學生id) student_class(s_id,c_id)
1.查詢一班得分在80分以上或者等于60,61,62的學生
2.査詢所有班級的名稱,和所有版中女生人數(shù)和女生的平均分。
答案:?
(1)SELECT s.s_id,s.name,s.score,sc.c_id,c.c_name from student s?
LEFT JOIN student_class sc on s.s_id = sc.s_id?
LEFT JOIN class c on sc.c_id=c.c_id?
where (s.score>80 or s.score in(60,61,62)) and c.c_name='一班';
(2)SELECT sc.s_id,c.c_name,COUNT(s.sex),AVG(s.score) from student_class sc?
LEFT JOIN class c on sc.c_id=c.c_id
LEFT JOIN student s on sc.s_id = s.s_id?
where s.sex='女' group BY c.c_name ORDER BY c.c_id asc;
返回記錄的條數(shù):
法一:SELECT * FROM Persons LIMIT 5
法二:SELECT * FROM Persons rownum <= 5
法三:SELECT TOP 5 *? FROM Persons
通配符
'''?SELECT * FROM Persons WHERE City LIKE 'N%'? N開頭
SELECT * FROM Persons WHERE City LIKE '%g'? ?g結尾
SELECT * FROM Persons WHERE City LIKE '%lon%'? 中間含lon
SELECT * FROM Persons WHERE City NOT LIKE '%lon%'? 不含lon
SELECT * FROM Persons WHERE FirstName LIKE '_eorge'? ? 第一個字符之后是 "eorge"?
SELECT * FROM Persons WHERE LastName LIKE 'C_r_er'?
姓氏以 "C" 開頭,然后是一個任意字符,然后是 "r",然后是任意字符,然后是 "er"
SELECT * FROM Persons WHERE City LIKE '[ALN]%'? ? ? ? 以 "A" 或 "L" 或 "N" 開頭的人
SELECT * FROM Persons WHERE City LIKE '[!ALN]%'? ? ? 不以 "A" 或 "L" 或 "N" 開頭的人:
SELECT * FROM Persons WHERE City LIKE '[^ALN]%'? ? ? 不以 "A" 或 "L" 或 "N" 開頭的
'''