MySQL数据库基础——高级查询2:为表和字段取别名
高级查询
一、使用LIMIT限制查询结果的数量:
MySQL数据库中提供LIMIK关键字,可以指定查询结果从哪一条记录开始以及一共查询多少条信息。其语法格式如下:
SELECT 字段名1,字段名2,...
FROM 表名
LIMIK [OFFSET,] 记录数;
在上述语法格式中,LIMIK关键字有两个参数,第一个是“OFFSET”关键字表示偏移量,如果偏移量为0则表示从查询结果的第一条记录开始,偏移量为1则表示从查询结果的第二条记录开始,以此类推,不指定则为默认值0.第二个参数是“记录数”表示返回查询记录的条数。
二、函数(列表):
MySQL中提供了丰富的函数,通过函数能够简化用户对数据的操作 。其中常用的函数如下表所示:
数学函数:
函数名称 | 作用 |
ABS(x) | 返回x的绝对值 |
SQRT(x) | 返回x的非负2次方根 |
MOD(x,y) | 返回x被y除后的余数 |
CEILING(x) | 返回不小于x的最小整数 |
FLOOR(x) | 返回不大于x的最大整数 |
ROUND(x,y) | 对x进行四舍五入操作,小数点后保留y位 |
TRUNCATE(x,y) | 舍去x中小数点y位后面的数 |
SIGN(X) | 返回x的符号,-1,1或0 |
字符串函数:
函数名称 | 作用 |
LENGTH(str) | 返回字符串str的长度 |
CONCAT(s1,s2,…) | 返回一个或多个字符串连接产生的新字符串 |
TRIM(str) | 删除字符串两侧的空格 |
REPLACE(str,s1,s2) | 使用字符串s2替换字符串str中所有的字符串s1 |
SUBSTRING(str,n,len) | 返回字符串str的子串,起始位置为n,长度为len |
REVERSE(str) | 返回字符串反转后的结果 |
LOCATE(s1,str) | 返回字符串s1在字符串str中的起始位置 |
日期和时间函数:
函数名称 | 作用 |
CURTADE() | 获得系统当前日期 |
CURTIME() | 获得系统当前时间 |
SYSDATE() | 获取当前系统日期和时间 |
TIME_TO_SEC() | 返回将时间转换成秒的结果 |
ADDDATE() | 执行日期加运算 |
SBUDATE() | 执行日期减运算 |
DATE_FORMAT() | 格式化输出日期和时间值 |
条件判断函数:
函数名称 | 作用 |
IF(expr,v1,v2) | 如果expr表达式为true返回v1,否则返回v2 |
IFNULL(v1,v2) | 如果v1不为NULL返回v1,否则返回v2 |
CASE expr WHERE v1 THEN r1[WHERE v2 THEN r2…] [ELSE rn] END | 如果expr值等于v1、v2等,则返回对应位置THEN后面的结果,否则返回ELSE后的结果rn |
加密函数:
函数名称 | 作用 |
MD5(str) | 对字符串str进行MD5加密 |
ENCODE(str,pwd_str) | 使用pwd作为密码加密字符串str |
DECODE(str,pwd_str) | 使用pwd作为密码解密字符串str |
为表和字段取别名
在查询数据时,可以为表和字段取别名,这个别名可以代替其指定的表和字段。
1.为表取别名:
SELECT * FROM 表名 [AS] 别名;
AS关键字用于指定表名的别名,可省略。
2.为字段取别名:
SELECT 字段名 [AS] 别名 [,字段名 [AS] 别名,...] FROM 表名;
AS关键字用于指定表名的别名,可省略。