"Every" 和 "Any" 未在 Mariadb 中返回值

"Every" and "Any" not returning value in Maria DB

EveryAny 是 Maria DB 中的两种聚合函数。这些功能return true or false based on boolean values在他们

当使用安装在 xampp 中的 MariaDB 和以下 服务器版本 时,我无法使用查询在我的本地环境中测试这些功能:

select any(column_name) from table_name

服务器版本 :

Server type: MariaDB
Server version: 10.1.21-MariaDB - mariadb.org binary distribution

有解决问题的想法吗?

谢谢。

您在知识库中指向的不是MariaDB 语法,而是SQL-99 标准。在 MariaDB (and MySQL) 实现中 ANYSOMEALL 不是聚合函数。它们根本不是函数或运算符,它们被称为 "words",用于比较运算符和子查询之间,例如

MariaDB [test]> CREATE TABLE t1 (f1 INT);
MariaDB [test]> CREATE TABLE t2 (f2 INT);
MariaDB [test]> INSERT INTO t1 VALUES (1),(2),(3),(4);
MariaDB [test]> INSERT INTO t2 VALUES (1),(2);

MariaDB [test]> SELECT * FROM t1 WHERE f1 > ANY( SELECT f2 FROM t2 );
+------+
| f1   |
+------+
|    2 |
|    3 |
|    4 |
+------+
3 rows in set (0.00 sec)