翻译:last_value()函数(已提交到MariaDB官方手册)

Posted 骏马金龙

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了翻译:last_value()函数(已提交到MariaDB官方手册)相关的知识,希望对你有一定的参考价值。

本文为mariadb官方手册:LAST_VALUE()的译文。

原文:https://mariadb.com/kb/en/last_value/
我提交到MariaDB官方手册的译文:https://mariadb.com/kb/zh-cn/last_value/

语法

LAST_VALUE(expr,[expr,...])

描述

LAST_VALUE()对所有表达式求值,并返回最后一个值。

这在结合使用@var:=expr为变量赋值时很有用。例如,当你想要从updated/deleted的行中获取数据时,你无需对表做两次查询。

从MariaDB 10.2.2开始,LAST_FUNCTION可以用作为一个开窗函数window function

示例

CREATE TABLE t1 (a int, b int);
INSERT INTO t1 VALUES(1,10),(2,20);
DELETE FROM t1 WHERE a=1 AND last_value(@a:=a,@b:=b,1);
SELECT @a,@b;
+------+------+
| @a   | @b   |
+------+------+
|    1 |   10 |
+------+------+

//译者补充示例
DELETE FROM t1;
INSERT INTO t1 VALUES(1,10),(2,20),(1,30);
DELETE FROM t1 WHERE a=1 AND last_value(@a:=a,@b:=b,1);
SELECT *,@a,@b;
+------+------+------+------+
| a    | b    | @a   | @b   |
+------+------+------+------+
|    2 |   20 |    1 |   30 |
+------+------+------+------+

以上是关于翻译:last_value()函数(已提交到MariaDB官方手册)的主要内容,如果未能解决你的问题,请参考以下文章

翻译:DECLARE Variable(已提交到MariaDB官方手册)

翻译:SET Variable(已提交到MariaDB官方手册)

翻译:replace into语句(已提交到MariaDB官方手册)

翻译:DECLARE HANDLER语句(已提交到MariaDB官方手册)

翻译:赋值操作符(:=)(已提交到MariaDB官方手册)

翻译:select into outfile(已提交到MariaDB官方手册)