17、逻辑运算符
Not逻辑运算符的一般规则:
*如:查询姓名不为null的学生记录有两种写法:
SELECT * FROM stu WHERE NOT sname IS NULL;not写在列名前面
SELECT * FROM stu WHERE sname IS NOT NULL;not写在is后面
*另外not代表非,<>符号也代表非。

18、比较运算符
*Is null为空值,不可以写成=null,
*Between 为在两个数值之间,且包含这两个数值,如:SELECT * FROM stu WHERE age
BETWEEN 20 AND 40;#(包括20和40)
*like 为模糊查询中的关键字,意思是像,一般与通配符一起用
:表示任意一个字母;
%:表示任意0~n个字母 %张% 表示姓张的人:张%,表示张姓两个字的人:张

如:1)#查询姓名以z开头的学生
SELECT * FROM stu WHERE sname LIKE ‘z%’
2)#查询姓名由5个字母构成,且第五个字母为i的学生记录
SELECT * FROM stu WHERE sname LIKE ‘____i’;
3)#查询姓名中第二个字母为i的学生记录
SELECT * FROM stu WHERE sname LIKE ‘_i%’;

19、AS子句作用
可给数据列取一个新别名
可给表取一个新别名
可把经计算或总结的结果用另外一个新名称来代替
AS子句用法:
SELECT StudentNo AS “学号” FROM student;
SELECT a.StudentNo FROM student AS a;
SELECT Phone+1 AS Tel FROM student;

20、简单说说DBMS与DB、DBS(数据库系统)的关系?
区别:数据库就是存放数据的仓库,数据库管理系统就是用来管理数据库的,其中数据库系统是一个通称,包括数据库、数据库管理系统、数据库管理人员等的统称,是最大的范畴。
21、运算关键字
1)去除重复记录需要用到关键字:distinct,
2)任何数与null进行算术运算结果都为null,如果要正常运算,需要在前面加ifnull,如:
查看月薪和佣金之和
SELECT sal+comm AS ‘月薪和佣金之和’ FROM emp;#(报错,结果为null)
SELECT sal+IFNULL (comm,0) AS ‘月薪和佣金之和’ FROM emp;(正确,结果为数值)
3)排序关键字:order by
Asc(升序排序,可以不写,因为默认为升序)
DESC(降序排序)
22、数据查询常用函数
1)聚合函数:
avg:求平均值,如:SELECT AVG(sal) AS ‘统计所有员工平均工资’ FROM emp;
Count:字段行数,如:SELECT COUNT(*) AS ‘佣金大于2500的人数’ FROM emp WHERE sal>2500;
Max:求最大值,如:ELECT MAX(sal) AS ‘最高工资’ from emp
Min:求最小值,如:ELECT MIN(sal) AS ‘最高工资’ from emp
Sum:求和,如:SELECT SUM(sal+IFNULL(comm,0)) AS ‘所有雇员佣金和’ FROM emp;
2)字符串函数
Concat(str1…strn):返回一个完整的字符串
Insert(str,pos,len,newstr):将字符串str从pos位置开始,len个字节长的子字符串替换成newstr。
Lower(str):将str字符串变小写
Upper(str):将str字符串变大写
Substring(str,num,len):返回字符串str的第num个位置开始的长度为len的子字符串
3)时间日期函数
Curdate():获取当前日期,如:select curdate();
Curtime():获取当前时间,如:select curtime();’
Now():获取当前日期和时间,如:select now();
Week(date):返回日期date为一年中的第几周,如:select week(now());
Year(date):返回日期的年份,如:select year(now());
Hour(time):返回时间的小时制,如:select hour(now());
Minute(time):返回时间的分钟制,如:select minute(now());
Adddate(date,n):计算日期参数date加上n天后的日期,如:SELECT ADDDATE(NOW(),24);
4)数学函数
Ceil(X):返回大于或者等于x的最小整数,如:select ceil(2.3)
Floor(X):返回小于或者等于x的最大整数,如:select floor(2.3)
Rand():返回0-1之间的随机数,如select rand()