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关键字用于指定表名的别名,可省略。