本文为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 |
+------+------+------+------+

相关文章:

  • 2021-07-20
  • 2021-12-06
  • 2021-07-18
  • 2021-08-22
  • 2021-09-11
  • 2021-10-24
  • 2021-10-03
  • 2022-01-04
猜你喜欢
  • 2021-08-09
  • 2021-11-05
  • 2021-12-07
  • 2021-09-29
  • 2022-02-09
  • 2021-10-03
  • 2021-08-17
相关资源
相似解决方案