当前位置: 首页 > news >正文

hhdb数据库介绍(9-13)

函数与操作符

计算节点对函数的支持

此文档仅列出部分经特殊处理的函数,若需要了解所有计算节点支持的函数,请向官方获取《计算节点最新功能清单》。

函数名称支持状态是否拦截说明
ABS()支持
ACOS()支持
ADDDATE()支持
ADDTIME()支持
AES_DECRYPT()支持
AES_ENCRYPT()支持
AND, &&支持
Area()支持
AsBinary(), AsWKB()支持
ASCII()支持
ASIN()支持
=支持
:=不支持
AsText(), AsWKT()支持
ATAN2(), ATAN()支持
ATAN()支持
AVG()支持
BENCHMARK()不支持
BETWEEN … AND …支持
BIN()支持
BINARY支持
BIT_AND()不支持
BIT_COUNT()支持
BIT_LENGTH()支持
BIT_OR()不支持
BIT_XOR()不支持
&支持
~支持
支持
^支持
Buffer()支持
CASE支持
CAST()支持
CEIL()支持
CEILING()支持
Centroid()支持
CHAR_LENGTH()支持
CHAR()支持
CHARACTER_LENGTH()支持
CHARSET()支持
COALESCE()支持
COERCIBILITY()支持
COLLATION()支持
COMPRESS()支持
CONCAT_WS()支持
CONCAT()支持
CONNECTION_ID()支持前端session连接计算节点的connection_id
Contains()支持
CONV()支持
CONVERT_TZ()支持
CONVERT()支持计算节点不论分片表或全局表,都不支持CONVERT(value, type)写法,只支持CONVERT(value using 字符集);
COS()支持
COT()支持
COUNT()支持
COUNT(DISTINCT)支持
CRC32()支持
Crosses()支持
CURDATE()支持
CURDATE(), CURRENT_DATE支持
CURRENT_ROLE()不支持计算节点不支持存储节点8.0新增角色功能
CURRENT_TIME(), CURRENT_TIME支持
CURRENT_TIMESTAMP(),CURRENT_TIMESTAMP支持
CURRENT_USER(), CURRENT_USER支持返回当前计算节点数据库用户
CURTIME()支持
DATABASE()支持返回当前逻辑库名称
DATE_ADD()支持
DATE_FORMAT()支持
DATE_SUB()支持
DATE()支持
DATEDIFF()支持
DAY()支持
DAYNAME()支持
DAYOFMONTH()支持
DAYOFWEEK()支持
DAYOFYEAR()支持
DECODE()支持
DEFAULT()支持
DEGREES()支持
DES_DECRYPT() (deprecated 5.7.6)支持
DES_ENCRYPT() (deprecated 5.7.6)支持
Dimension()支持
Disjoint()支持
DIV支持
/支持
ELT()支持
ENCODE()支持
ENCRYPT() (deprecated 5.7.6)支持
EndPoint()支持
Envelope()支持
<=>限制支持
=支持
Equals()支持
EXP()支持
EXPORT_SET()支持
ExteriorRing()支持
EXTRACT()支持
ExtractValue()支持
FIELD()支持
FIND_IN_SET()支持
FLOOR()支持
FORMAT()支持
FOUND_ROWS()不支持
FROM_BASE64()支持
FROM_DAYS()支持
FROM_UNIXTIME()支持
GeomCollFromText(),GeometryCollectionFromText()支持
GeomCollFromWKB(),GeometryCollectionFromWKB()支持
GeometryCollection()支持
GeometryN()支持
GeometryType()支持
GeomFromText(), GeometryFromText()支持
GeomFromWKB()支持
GET_FORMAT()支持
GET_LOCK()不支持
GLength()支持
>=支持
>支持
GREATEST()支持
GROUP_CONCAT()支持
GROUPING()不支持存储节点8.0新增功能
GTID_SUBSET()支持
GTID_SUBTRACT()支持
HEX()支持
HOUR()支持
IF()支持
IFNULL()支持
IN()支持
INET_ATON()支持
INET_NTOA()支持
INET6_ATON()支持
INET6_NTOA()支持
INSERT()支持
INSTR()支持
InteriorRingN()支持
Intersects()支持
INTERVAL()支持
IS_FREE_LOCK()不支持
IS_IPV4_COMPAT()支持
IS_IPV4_MAPPED()支持
IS_IPV4()支持
IS_IPV6()支持
IS NOT NULL支持
IS NOT支持
IS NULL支持
IS_USED_LOCK()不支持
IS支持
IsClosed()支持
IsEmpty()支持
ISNULL()支持
IsSimple()支持
JSON_ARRAYAGG(col_or_expr) [over_clause]支持存储节点8.0与5.7新增功能
JSON_OBJECTAGG(key, value) [over_clause]支持存储节点8.0与5.7新增功能
JSON_PRETTY(json_val)支持存储节点8.0与5.7新增功能
JSON_STORAGE_FREE(json_val)支持存储节点8.0新增功能
JSON_STORAGE_SIZE(json_val)支持存储节点8.0与5.7新增功能
JSON_MERGE_PATCH(json_doc, json_doc[, json_doc] …)支持存储节点8.0与5.7新增功能
JSON_TABLE(expr, path COLUMNS (column_list) [AS] alias)不支持存储节点8.0新增功能
LAST_DAY支持
LAST_INSERT_ID()支持
LCASE()支持
LEAST()支持
<<支持
LEFT()支持
LENGTH()支持
<=支持
<支持
LIKE支持
LineFromText()支持
LineFromWKB(), LineStringFromWKB()支持
LineString()支持
LN()支持
LOAD_FILE()不支持
LOCALTIME(), LOCALTIME支持
LOCALTIMESTAMP, LOCALTIMESTAMP()支持
LOCATE()支持
LOG10()支持
LOG2()支持
LOG()支持
LOWER()支持
LPAD()支持
LTRIM()支持
MAKE_SET()支持
MAKEDATE()支持
MAKETIME()支持
MASTER_POS_WAIT()不支持
MATCH支持
MAX()支持
MBRContains()支持
MBRDisjoint()支持
MBREqual() (deprecated 5.7.6)支持
MBRIntersects()支持
MBROverlaps()支持
MBRTouches()支持
MBRWithin()支持
MD5()支持
MICROSECOND()支持
MID()支持
-支持
MIN()支持
MINUTE()支持
MLineFromText(),MultiLineStringFromText()支持
MLineFromWKB(),MultiLineStringFromWKB()支持
MOD()支持
% or MOD支持
MONTH()支持
MONTHNAME()支持
MPointFromText(),MultiPointFromText()支持
MPointFromWKB(), MultiPointFromWKB()支持
MPolyFromText(),MultiPolygonFromText()支持
MPolyFromWKB(),MultiPolygonFromWKB()支持
MultiLineString()支持
MultiPoint()支持
MultiPolygon()支持
NAME_CONST()支持
NOT BETWEEN … AND …支持
!=, <>支持
NOT IN()支持
NOT LIKE支持
NOT REGEXP支持
NOT, !支持
NOW()支持
NULLIF()支持
NumGeometries()支持
NumInteriorRings()支持
NumPoints()支持
OCT()支持
OCTET_LENGTH()支持
OLD_PASSWORD() (deprecated 5.6.5)支持
, OR支持
ORD()支持
Overlaps()支持
PASSWORD()支持
PERIOD_ADD()支持
PERIOD_DIFF()支持
PI()支持
+支持
Point()支持
PointFromText()支持
PointFromWKB()支持
PointN()支持
PolyFromText(), PolygonFromText()支持
PolyFromWKB(), PolygonFromWKB()支持
Polygon()支持
POSITION()支持
POW()支持
POWER()支持
PROCEDURE ANALYSE()不支持
PS_CURRENT_THREAD_ID()不支持存储节点8.0新增功能
PS_THREAD_ID(connection_id)不支持存储节点8.0新增功能
QUARTER()支持
QUOTE()支持
RADIANS()支持
RAND()支持JOIN查询中分片表不支持RAND任何语法
RANDOM_BYTES()支持
REGEXP支持
RELEASE_LOCK()不支持
REPEAT()支持
REPLACE()支持
REVERSE()支持
>>支持
RIGHT()支持
RLIKE支持
ROLES_GRAPHML()不支持存储节点8.0新增功能
ROUND()支持
ROW_COUNT()不支持
RPAD()支持
RTRIM()支持
SCHEMA()支持select schema()返回逻辑库名称
SEC_TO_TIME()支持
SECOND()支持
SESSION_USER()支持select session_user()显示为当前登录的计算节点数据库用户信息
SHA1(), SHA()支持
SHA2()支持
SIGN()支持
SIN()支持
SLEEP()不支持可配置参数是否允许SLEEP函数,默认不允许
SOUNDEX()支持
SOUNDS LIKE支持
SPACE()支持
SQL_THREAD_WAIT_AFTER_GTIDS()(deprecated 5.6.9)不支持
SQRT()支持
SRID()支持
StartPoint()支持
STD()不支持
STDDEV_POP()不支持
STDDEV_SAMP()不支持
STDDEV()不支持
STR_TO_DATE()支持
STRCMP()支持
SUBDATE()支持
SUBSTR()支持
SUBSTRING_INDEX()支持
SUBSTRING()支持
SUBTIME()支持
SUM()支持
SYSDATE()支持(注意:测试服务器的SYSDATE加了参数,使其等于NOW() 所以不会有延迟的区别,为了规避主从库数据不一致等风险)
SYSTEM_USER()支持显示为当前登录的计算节点数据库用户信息
TAN()支持
TIME_FORMAT()支持
TIME_TO_SEC()支持
TIME()支持
TIMEDIFF()支持
*支持
TIMESTAMP()支持
TIMESTAMPADD()支持
TIMESTAMPDIFF()支持
TO_BASE64()支持
TO_DAYS()支持
TO_SECONDS()支持
Touches()支持
TRIM()支持
TRUNCATE()支持
UCASE()支持
-支持
UNCOMPRESS()支持
UNCOMPRESSED_LENGTH()支持
UNHEX()支持
UNIX_TIMESTAMP()支持
UpdateXML()支持
UPPER()支持
USER()支持SELECT user();查询出来的是当前登录的计算节点数据库用户
UTC_DATE()支持
UTC_TIME()支持
UTC_TIMESTAMP()支持
UUID_SHORT()支持
UUID()支持
VALIDATE_PASSWORD_STRENGTH()支持
VALUES()支持
VAR_POP()不支持
VAR_SAMP()不支持
VARIANCE()不支持
VERSION()支持查询结果显示计算节点的version
WAIT_UNTIL_SQL_THREAD_AFTER_GTIDS()不支持
WEEK()支持
WEEKDAY()支持
WEEKOFYEAR()支持
WEIGHT_STRING()支持
窗口函数不支持存储节点8.0新增功能
Within()支持
X()支持
XOR支持
Y()支持
YEAR()支持
YEARWEEK()支持

聚合结果集合并(MERGE_RESULT)

MERGE_RESULT控制计算节点对聚合函数的结果是否进行合并。当该值设置为1时,计算节点将合并聚合函数的结果;当该值设置为0时,计算节点将不合并聚合函数的结果。

默认情况下,MERGE_RESULT值为1。

MERGE_RESULT=0时,含有聚合函数的SQL语句,计算节点将不合并结果集,每个数据节点的查询结果单独返回:

mysql> select count(*) from customer;
+----------+
| COUNT(*) |
+----------+
| 23       |
| 11       |
| 13       |
| 53       |
+----------+
4 rows in set (0.00 sec)

SET MERGE_RESULT=0 和SET SHOW_DNID=1,可用于统计业务表在各个数据节点上的分布情况:

mysql> set MERGE_RESULT=0;
mysql> set show_dnid=1;
mysql> select count(*) from customer;
+----------+------+
| COUNT(*) | DNID |
+----------+------+
| 13       | 12   |
| 11       | 15   |
| 53       | 13   |
| 23       | 14   |
+----------+------+
4 rows in set (0.00 sec)

结果集中的DNID列显示了每个数据节点的唯一标识ID。结果中,非常直观的显示了customer表在各个数据节点上的实际数据量。

MERGE_RESULT=1时,含有聚合函数的SQL语句,计算节点将所有数据节点的结果按SQL语义返回查询结果:

mysql> set show_dnid=0;
mysql> set MERGE_RESULT=1;
mysql> select count(*) from customer;
+----------+
| COUNT(*) |
+----------+
| 100      |
+----------+
1 row in set (0.00 sec)
http://www.lryc.cn/news/484530.html

相关文章:

  • Jmeter基础篇(24)Jmeter目录下有哪些文件夹是可以删除,且不影响使用的呢?
  • 卷积、频域乘积和矩阵向量乘积三种形式之间的等价关系与转换
  • 【Vue】Vue3.0(二十二) v-model 在原始Dom元素、自定义输入组件中双向绑定的底层实现原理详解
  • 史上最强大的 S3 API?介绍 Prompt API。
  • 单片机设计智能翻译手势识别系统
  • 「Mac玩转仓颉内测版12」PTA刷题篇3 - L1-003 个位数统计
  • 飞书文档只读限制复制
  • 【WPF】Prism学习(二)
  • 【鸿蒙开发】第二十一章 Location位置服务
  • 《目标检测》R-CNN网络基础(RCNN,Fast-RCNN)
  • iOS中的定位实现(逆地理编码)及Info.plist位置权限详解
  • 【从零开始的LeetCode-算法】3270. 求出数字答案
  • Web认证机制 Cookie、Token、Session、JWT、OAuth2 解析
  • Docker 基础命令介绍和常见报错解决
  • 如何轻松导出所有 WordPress URL 为纯文本格式
  • 【进程概念精讲】
  • 帽子矩阵--记录
  • MySQL深入:B+树的演化、索引和索引结构
  • axios 实现 无感刷新方案
  • Python 三种方式实现自动化任务
  • 新型创业模式:退休创业。没有工资,不用投资,有时间就干,不强制做,赚钱按贡献分。
  • Android 项目依赖库无法找到的解决方案
  • 在Node.js中如何使用TypeScript
  • 链表两数加python
  • 免费的可以薅羊毛的cloudflare反向代理教程
  • 【每日刷题】Day155
  • EXCEL延迟退休公式
  • 开源对象存储新选择:在Docker上部署MinIO并实现远程管理
  • Spring Cloud生态圈
  • AI视觉小车基础--4.舵机控制(云台控制)