SQL基础教程:查询与操作数据库

需积分: 17 1 下载量 111 浏览量 更新于2024-09-13 收藏 4KB TXT 举报
"数据库基本语法笔记" 在数据库操作中,SQL(Structured Query Language)是一种用于管理关系数据库的标准语言。以下是一些基本的SQL语法概念和用法: 1. 比较运算符: - `<`:小于 - `>`:大于 - `'Student' < 'Stupid'`:字符串比较时按照字典顺序。 2. 选择记录: - `SELECT * FROM Student WHERE Age > 19 AND Dept = 'CS' OR Dept = 'EE';`:选择年龄大于19且专业为'CS'或'EE'的学生记录。 - `SELECT * FROM Student WHERE Age IS NULL;`:选择年龄为空的学生记录。 - `SELECT * FROM Student WHERE Age IS NOT NULL;`:选择年龄不为空的学生记录。 3. 列别名: - `SELECT StudentNo AS No, StudentName AS Name FROM Student;`:将`StudentNo`列重命名为`No`,`StudentName`列重命名为`Name`。 4. 模糊查询: - `%`:代表任意数量的字符,`LIKE '%abc%'`表示查找包含'abc'的记录。 - `_`:代表单个字符,`LIKE '_bc'`表示查找以'bc'开头的记录。 - `*`:在某些上下文中代表所有,但在`LIKE`中无效,不能用于模糊匹配。 5. 字符串匹配: - `LIKE`与`NOT LIKE`用于执行模式匹配,如`LIKE 'Feel100%'`会找到以'Feel100'开头的记录。若要包含特殊字符,需进行转义,例如`Title='Feel100\%'`。 6. 排序: - `ORDER BY`用于对结果集进行排序,`DESC`表示降序,`ASC`表示升序,默认是`ASC`。 - `SELECT * FROM Student WHERE Dept='' ORDER BY Age DESC, StudentNo;`:按年龄降序,然后按学号升序排列所有专业为空的学生。 7. 聚合函数: - `SUM`, `AVG`, `MIN`, `MAX`, `COUNT`用于计算特定列的总和、平均值、最小值、最大值和计数。 - `SELECT AVG(Age) FROM Student;`:返回学生年龄的平均值。 - `SELECT COUNT(*) FROM Student WHERE Dept='';`:计算专业为空的学生数量。 8. 分组与过滤: - `GROUP BY`用于根据一个或多个列对结果进行分组,`HAVING`用于过滤分组后的结果。 - `SELECT Dept, COUNT(*) FROM Student GROUP BY Dept;`:按专业分组并计算每个专业学生数量。 - `SELECT Dept, COUNT(*) FROM Student GROUP BY Dept HAVING COUNT(*) > 50;`:仅显示学生数量超过50的专业。 9. 子查询: - 子查询可以在查询语句中嵌套,用于返回满足特定条件的结果集。 - 例子中提到的子查询是用于找出特定条件下的学生编号,可以结合其他操作进一步使用。 这些基础概念构成了SQL语法的基础,使得我们能够高效地查询、操作和分析数据库中的数据。对于不专门从事数据库工作的人来说,掌握这些基本语法也能在日常工作中大大提高效率。