- 关于MogDB
- 快速入门
- 特性描述
- 概览
- 高性能
- 高可用
- 维护性
- 兼容性
- 视图增加%rowtype属性
- 聚合函数distinct性能优化
- 聚合函数支持KEEP子句
- 聚合函数支持场景扩展
- 兼容支持MySQL别名支持单引号
- 支持current_date/current_time关键字作为字段名
- 自定义type数组
- For Update支持外连接
- MogDB支持Insert All特性
- Oracle DBLink语法兼容
- 创建PACKAGE/FUNCTION/PROCEDURE时去除TYPE类型转换提示
- 支持MERGE INTO命中索引时使用Bypass方法
- 支持增加存储过程及函数参数的nocopy属性
- 支持在数组extend的参数中传入数组的count属性
- 支持q quote转义字符
- 支持两个date类型的数据相减返回numeric类型
- 支持表函数table()
- 支持PROCEDURE/FUNCTION/PACKAGE的end后的name和Oracle保持一致
- 支持WHERE CURRENT OF写法
- 支持包内常量作为函数或者过程入参的默认值
- 支持PLPGSQL subtype
- 支持无参数FUNCTION的同义词调用不加括号
- 支持dbms_utility.format_error_backtrace
- 支持PIVOT和UNPIVOT语法
- mod函数兼容
- 支持聚集函数嵌套
- ORDER BY/GROUP BY场景兼容
- 支持在建表后修改表日志属性
- INSERT支持ON CONFLICT子句
- 支持AUTHID CURRENT_USER
- PBE模式支持存储过程out出参
- 数据库安全
- 企业级特性
- 应用开发接口
- AI能力
- 中间件
- 负载管理
- 安装指南
- 升级指南
- 管理指南
- 高可用指南
- AI特性指南
- 安全指南
- 开发者指南
- 应用程序开发教程
- 开发规范
- 基于JDBC开发
- JDBC包、驱动类和环境类
- 开发流程
- 加载驱动
- 连接数据库
- 连接数据库(以SSL方式)
- 连接数据库(UDS方式)
- 执行SQL语句
- 处理结果集
- 关闭连接
- 日志管理
- 示例:常用操作
- 示例:重新执行应用SQL
- 示例:通过本地文件导入导出数据
- 示例:从MY向MogDB进行数据迁移
- 示例:逻辑复制代码示例
- 示例:不同场景下连接数据库参数配置
- 示例:jdbc主备集群负载均衡
- JDBC接口参考
- java.sql.Connection
- java.sql.CallableStatement
- java.sql.DatabaseMetaData
- java.sql.Driver
- java.sql.PreparedStatement
- java.sql.ResultSet
- java.sql.ResultSetMetaData
- java.sql.Statement
- javax.sql.ConnectionPoolDataSource
- javax.sql.DataSource
- javax.sql.PooledConnection
- javax.naming.Context
- javax.naming.spi.InitialContextFactory
- CopyManager
- JDBC常用参数参考
- JDBC发布记录
- 基于ODBC开发
- 基于libpq开发
- 基于Psycopg2开发
- 调试
- 存储过程
- 用户自定义函数
- PL/pgSQL-SQL过程语言
- 定时任务
- 自治事务
- 逻辑复制
- Extension
- MySQL兼容性说明
- Dolphin Extension
- Dolphin概述
- Dolphin安装
- Dolphin限制
- Dolphin语法介绍
- SQL参考
- 关键字
- 数据类型
- 函数和操作符
- 表达式
- DDL语法一览表
- DML语法一览表
- DCL语法一览表
- SQL语法
- ALTER DATABASE
- ALTER FUNCTION
- ALTER PROCEDURE
- ALTER SERVER
- ALTER TABLE
- ALTER TABLE PARTITION
- ALTER TABLESPACE
- ALTER VIEW
- ANALYZE | ANALYSE
- AST
- CHECKSUM TABLE
- CREATE DATABASE
- CREATE FUNCTION
- CREATE INDEX
- CREATE PROCEDURE
- CREATE SERVER
- CREATE TABLE
- CREATE TABLE AS
- CREATE TABLE PARTITION
- CREATE TABLESPACE
- CREATE TRIGGER
- CREATE VIEW
- DESCRIBE TABLE
- DO
- DROP DATABASE
- DROP INDEX
- DROP TABLESPACE
- EXECUTE
- EXPLAIN
- FLUSH BINARY LOGS
- GRANT
- GRANT/REVOKE PROXY
- INSERT
- KILL
- LOAD DATA
- OPTIMIZE TABLE
- PREPARE
- RENAME TABLE
- RENAME USER
- REVOKE
- SELECT
- SELECT HINT
- SET CHARSET
- SET PASSWORD
- SHOW CHARACTER SET
- SHOW COLLATION
- SHOW COLUMNS
- SHOW CREATE DATABASE
- SHOW CREATE FUNCTION
- SHOW CREATE PROCEDURE
- SHOW CREATE TABLE
- SHOW CREATE TRIGGER
- SHOW CREATE VIEW
- SHOW DATABASES
- SHOW FUNCTION STATUS
- SHOW GRANTS
- SHOW INDEX
- SHOW MASTER STATUS
- SHOW PLUGINS
- SHOW PRIVILEGES
- SHOW PROCEDURE STATUS
- SHOW PROCESSLIST
- SHOW SLAVE HOSTS
- SHOW STATUS
- SHOW TABLES
- SHOW TABLE STATUS
- SHOW TRIGGERS
- SHOW VARIABLES
- SHOW WARNINGS/ERRORS
- UPDATE
- USE db_name
- 系统视图
- GUC参数说明
- 重设参数
- 存储过程
- 标识符说明
- SQL参考
- MySQL语法兼容性评估工具
- Dolphin Extension
- 物化视图
- 分区管理
- 应用程序开发教程
- 性能优化指南
- 参考指南
- 系统表及系统视图
- 系统表和系统视图概述
- 查看系统表
- 系统表
- GS_ASP
- GS_AUDITING_POLICY
- GS_AUDITING_POLICY_ACCESS
- GS_AUDITING_POLICY_FILTERS
- GS_AUDITING_POLICY_PRIVILEGES
- GS_CLIENT_GLOBAL_KEYS
- GS_CLIENT_GLOBAL_KEYS_ARGS
- GS_COLUMN_KEYS
- GS_COLUMN_KEYS_ARGS
- GS_DB_PRIVILEGE
- GS_ENCRYPTED_COLUMNS
- GS_ENCRYPTED_PROC
- GS_GLOBAL_CHAIN
- GS_GLOBAL_CONFIG
- GS_MASKING_POLICY
- GS_MASKING_POLICY_ACTIONS
- GS_MASKING_POLICY_FILTERS
- GS_MATVIEW
- GS_MATVIEW_DEPENDENCY
- GS_MODEL_WAREHOUSE
- GS_OPT_MODEL
- GS_PACKAGE
- GS_POLICY_LABEL
- GS_RECYCLEBIN
- GS_TXN_SNAPSHOT
- GS_UID
- GS_WLM_EC_OPERATOR_INFO
- GS_WLM_INSTANCE_HISTORY
- GS_WLM_OPERATOR_INFO
- GS_WLM_PLAN_ENCODING_TABLE
- GS_WLM_PLAN_OPERATOR_INFO
- GS_WLM_SESSION_QUERY_INFO_ALL
- GS_WLM_USER_RESOURCE_HISTORY
- PG_AGGREGATE
- PG_AM
- PG_AMOP
- PG_AMPROC
- PG_APP_WORKLOADGROUP_MAPPING
- PG_ATTRDEF
- PG_ATTRIBUTE
- PG_AUTH_HISTORY
- PG_AUTH_MEMBERS
- PG_AUTHID
- PG_CAST
- PG_CLASS
- PG_COLLATION
- PG_CONSTRAINT
- PG_CONVERSION
- PG_DATABASE
- PG_DB_ROLE_SETTING
- PG_DEFAULT_ACL
- PG_DEPEND
- PG_DESCRIPTION
- PG_DIRECTORY
- PG_ENUM
- PG_EVENT_TRIGGER
- PG_EXTENSION
- PG_EXTENSION_DATA_SOURCE
- PG_FOREIGN_DATA_WRAPPER
- PG_FOREIGN_SERVER
- PG_FOREIGN_TABLE
- PG_HASHBUCKET
- PG_INDEX
- PG_INHERITS
- PG_JOB
- PG_JOB_PROC
- PG_LANGUAGE
- PG_LARGEOBJECT
- PG_LARGEOBJECT_METADATA
- PG_NAMESPACE
- PG_OBJECT
- PG_OPCLASS
- PG_OPERATOR
- PG_OPFAMILY
- PG_PARTITION
- PG_PLTEMPLATE
- PG_PROC
- PG_PUBLICATION
- PG_PUBLICATION_REL
- PG_RANGE
- PG_REPLICATION_ORIGIN
- PG_RESOURCE_POOL
- PG_REWRITE
- PG_RLSPOLICY
- PG_SECLABEL
- PG_SET
- PG_SHDEPEND
- PG_SHDESCRIPTION
- PG_SHSECLABEL
- PG_STATISTIC
- PG_STATISTIC_EXT
- PG_SUBSCRIPTION
- PG_SUBSCRIPTION_REL
- PG_SYNONYM
- PG_TABLESPACE
- PG_TRIGGER
- PG_TS_CONFIG
- PG_TS_CONFIG_MAP
- PG_TS_DICT
- PG_TS_PARSER
- PG_TS_TEMPLATE
- PG_TYPE
- PG_USER_MAPPING
- PG_USER_STATUS
- PG_WORKLOAD_GROUP
- PGXC_CLASS
- PGXC_GROUP
- PGXC_NODE
- PGXC_SLICE
- PLAN_TABLE_DATA
- STATEMENT_HISTORY
- 系统视图
- GET_GLOBAL_PREPARED_XACTS(废弃)
- GS_ASYNC_SUBMIT_SESSIONS_STATUS
- GS_AUDITING
- GS_AUDITING_ACCESS
- GS_AUDITING_PRIVILEGE
- GS_CLUSTER_RESOURCE_INFO
- GS_COMPRESSION
- GS_DB_PRIVILEGES
- GS_FILE_STAT
- GS_GSC_MEMORY_DETAIL
- GS_INSTANCE_TIME
- GS_LABELS
- GS_LSC_MEMORY_DETAIL
- GS_MASKING
- GS_MATVIEWS
- GS_OS_RUN_INFO
- GS_REDO_STAT
- GS_SESSION_CPU_STATISTICS
- GS_SESSION_MEMORY
- GS_SESSION_MEMORY_CONTEXT
- GS_SESSION_MEMORY_DETAIL
- GS_SESSION_MEMORY_STATISTICS
- GS_SESSION_STAT
- GS_SESSION_TIME
- GS_SHARED_MEMORY_DETAIL
- GS_SQL_COUNT
- GS_STAT_SESSION_CU
- GS_THREAD_MEMORY_CONTEXT
- GS_TOTAL_MEMORY_DETAIL
- GS_WLM_CGROUP_INFO
- GS_WLM_EC_OPERATOR_STATISTICS
- GS_WLM_OPERATOR_HISTORY
- GS_WLM_OPERATOR_STATISTICS
- GS_WLM_PLAN_OPERATOR_HISTORY
- GS_WLM_REBUILD_USER_RESOURCE_POOL
- GS_WLM_RESOURCE_POOL
- GS_WLM_SESSION_HISTORY
- GS_WLM_SESSION_INFO
- GS_WLM_SESSION_INFO_ALL
- GS_WLM_SESSION_STATISTICS
- GS_WLM_USER_INFO
- IOS_STATUS
- MPP_TABLES
- PG_AVAILABLE_EXTENSION_VERSIONS
- PG_AVAILABLE_EXTENSIONS
- PG_COMM_DELAY
- PG_COMM_RECV_STREAM
- PG_COMM_SEND_STREAM
- PG_COMM_STATUS
- PG_CONTROL_GROUP_CONFIG
- PG_CURSORS
- PG_EXT_STATS
- PG_GET_INVALID_BACKENDS
- PG_GET_SENDERS_CATCHUP_TIME
- PG_GROUP
- PG_GTT_ATTACHED_PIDS
- PG_GTT_RELSTATS
- PG_GTT_STATS
- PG_INDEXES
- PG_LOCKS
- PG_NODE_ENV
- PG_OS_THREADS
- PG_PREPARED_STATEMENTS
- PG_PREPARED_XACTS
- PG_PUBLICATION_TABLES
- PG_REPLICATION_ORIGIN_STATUS
- PG_REPLICATION_SLOTS
- PG_RLSPOLICIES
- PG_ROLES
- PG_RULES
- PG_RUNNING_XACTS
- PG_SECLABELS
- PG_SESSION_IOSTAT
- PG_SESSION_WLMSTAT
- PG_SETTINGS
- PG_SHADOW
- PG_STAT_ACTIVITY
- PG_STAT_ACTIVITY_NG
- PG_STAT_ALL_INDEXES
- PG_STAT_ALL_TABLES
- PG_STAT_BAD_BLOCK
- PG_STAT_BGWRITER
- PG_STAT_DATABASE
- PG_STAT_DATABASE_CONFLICTS
- PG_STAT_REPLICATION
- PG_STAT_SUBSCRIPTION
- PG_STAT_SYS_INDEXES
- PG_STAT_SYS_TABLES
- PG_STAT_USER_FUNCTIONS
- PG_STAT_USER_INDEXES
- PG_STAT_USER_TABLES
- PG_STAT_XACT_ALL_TABLES
- PG_STAT_XACT_SYS_TABLES
- PG_STAT_XACT_USER_FUNCTIONS
- PG_STAT_XACT_USER_TABLES
- PG_STATIO_ALL_INDEXES
- PG_STATIO_ALL_SEQUENCES
- PG_STATIO_ALL_TABLES
- PG_STATIO_SYS_INDEXES
- PG_STATIO_SYS_SEQUENCES
- PG_STATIO_SYS_TABLES
- PG_STATIO_USER_INDEXES
- PG_STATIO_USER_SEQUENCES
- PG_STATIO_USER_TABLES
- PG_STATS
- PG_TABLES
- PG_TDE_INFO
- PG_THREAD_WAIT_STATUS
- PG_TIMEZONE_ABBREVS
- PG_TIMEZONE_NAMES
- PG_TOTAL_MEMORY_DETAIL
- PG_TOTAL_USER_RESOURCE_INFO
- PG_TOTAL_USER_RESOURCE_INFO_OID
- PG_USER
- PG_USER_MAPPINGS
- PG_VARIABLE_INFO
- PG_VIEWS
- PG_WLM_STATISTICS
- PGXC_PREPARED_XACTS
- PLAN_TABLE
- PATCH_INFORMATION_TABLE
- 系统函数
- 逻辑操作符
- 比较操作符
- 字符处理函数和操作符
- 二进制字符串函数和操作符
- 位串函数和操作符
- 模式匹配操作符
- 数字操作函数和操作符
- 时间和日期处理函数和操作符
- 类型转换函数
- 几何函数和操作符
- 网络地址函数和操作符
- 文本检索函数和操作符
- JSON/JSONB函数和操作符
- HLL函数和操作符
- SEQUENCE函数
- 数组函数和操作符
- 范围函数和操作符
- 聚集函数
- 窗口函数(分析函数)
- 安全函数
- 账本数据库的函数
- 密态等值的函数
- 返回集合的函数
- 条件表达式函数
- 系统信息函数
- 系统管理函数
- 统计信息函数
- 触发器函数
- 事件触发器函数
- HashFunc函数
- 提示信息函数
- 全局临时表函数
- 故障注入系统函数
- AI特性函数
- 动态数据脱敏函数
- 其他系统函数
- 内部函数
- Global SysCache特性函数
- 数据损坏检测修复函数
- XML类型函数
- 废弃函数
- 支持的数据类型
- SQL语法
- ABORT
- ALTER AGGREGATE
- ALTER AUDIT POLICY
- ALTER DATABASE
- ALTER DATA SOURCE
- ALTER DEFAULT PRIVILEGES
- ALTER DIRECTORY
- ALTER EVENT
- ALTER EVENT TRIGGER
- ALTER EXTENSION
- ALTER FOREIGN DATA WRAPPER
- ALTER FOREIGN TABLE
- ALTER FUNCTION
- ALTER GLOBAL CONFIGURATION
- ALTER GROUP
- ALTER INDEX
- ALTER LANGUAGE
- ALTER LARGE OBJECT
- ALTER MASKING POLICY
- ALTER MATERIALIZED VIEW
- ALTER OPERATOR
- ALTER PACKAGE
- ALTER PROCEDURE
- ALTER PUBLICATION
- ALTER RESOURCE LABEL
- ALTER RESOURCE POOL
- ALTER ROLE
- ALTER ROW LEVEL SECURITY POLICY
- ALTER RULE
- ALTER SCHEMA
- ALTER SEQUENCE
- ALTER SERVER
- ALTER SESSION
- ALTER SUBSCRIPTION
- ALTER SYNONYM
- ALTER SYSTEM KILL SESSION
- ALTER SYSTEM SET
- ALTER TABLE
- ALTER TABLE PARTITION
- ALTER TABLE SUBPARTITION
- ALTER TABLESPACE
- ALTER TEXT SEARCH CONFIGURATION
- ALTER TEXT SEARCH DICTIONARY
- ALTER TRIGGER
- ALTER TYPE
- ALTER USER
- ALTER USER MAPPING
- ALTER VIEW
- ANALYZE | ANALYSE
- BEGIN
- CALL
- CHECKPOINT
- CLEAN CONNECTION
- CLOSE
- CLUSTER
- COMMENT
- COMMIT | END
- COMMIT PREPARED
- CONNECT BY
- COPY
- CREATE AGGREGATE
- CREATE AUDIT POLICY
- CREATE CAST
- CREATE CLIENT MASTER KEY
- CREATE COLUMN ENCRYPTION KEY
- CREATE DATABASE
- CREATE DATA SOURCE
- CREATE DIRECTORY
- CREATE EVENT
- CREATE EVENT TRIGGER
- CREATE EXTENSION
- CREATE FOREIGN DATA WRAPPER
- CREATE FOREIGN TABLE
- CREATE FUNCTION
- CREATE GROUP
- CREATE INCREMENTAL MATERIALIZED VIEW
- CREATE INDEX
- CREATE LANGUAGE
- CREATE MASKING POLICY
- CREATE MATERIALIZED VIEW
- CREATE MODEL
- CREATE OPERATOR
- CREATE PACKAGE
- CREATE PROCEDURE
- CREATE PUBLICATION
- CREATE RESOURCE LABEL
- CREATE RESOURCE POOL
- CREATE ROLE
- CREATE ROW LEVEL SECURITY POLICY
- CREATE RULE
- CREATE SCHEMA
- CREATE SEQUENCE
- CREATE SERVER
- CREATE SUBSCRIPTION
- CREATE SYNONYM
- CREATE TABLE
- CREATE TABLE AS
- CREATE TABLE PARTITION
- CREATE TABLESPACE
- CREATE TABLE SUBPARTITION
- CREATE TEXT SEARCH CONFIGURATION
- CREATE TEXT SEARCH DICTIONARY
- CREATE TRIGGER
- CREATE TYPE
- CREATE USER
- CREATE USER MAPPING
- CREATE VIEW
- CREATE WEAK PASSWORD DICTIONARY
- CURSOR
- DEALLOCATE
- DECLARE
- DELETE
- DELIMITER
- DO
- DROP AGGREGATE
- DROP AUDIT POLICY
- DROP CAST
- DROP CLIENT MASTER KEY
- DROP COLUMN ENCRYPTION KEY
- DROP DATABASE
- DROP DATA SOURCE
- DROP DIRECTORY
- DROP EVENT
- DROP EVENT TRIGGER
- DROP EXTENSION
- DROP FOREIGN DATA WRAPPER
- DROP FOREIGN TABLE
- DROP FUNCTION
- DROP GLOBAL CONFIGURATION
- DROP GROUP
- DROP INDEX
- DROP LANGUAGE
- DROP MASKING POLICY
- DROP MATERIALIZED VIEW
- DROP MODEL
- DROP OPERATOR
- DROP OWNED
- DROP PACKAGE
- DROP PROCEDURE
- DROP PUBLICATION
- DROP RESOURCE LABEL
- DROP RESOURCE POOL
- DROP ROLE
- DROP ROW LEVEL SECURITY POLICY
- DROP RULE
- DROP SCHEMA
- DROP SEQUENCE
- DROP SERVER
- DROP SUBSCRIPTION
- DROP SYNONYM
- DROP TABLE
- DROP TABLESPACE
- DROP TEXT SEARCH CONFIGURATION
- DROP TEXT SEARCH DICTIONARY
- DROP TRIGGER
- DROP TYPE
- DROP USER
- DROP USER MAPPING
- DROP VIEW
- DROP WEAK PASSWORD DICTIONARY
- EXECUTE
- EXECUTE DIRECT
- EXPLAIN
- EXPLAIN PLAN
- FETCH
- GRANT
- INSERT
- LOCK
- MERGE INTO
- MOVE
- PREDICT BY
- PREPARE
- PREPARE TRANSACTION
- PURGE
- REASSIGN OWNED
- REFRESH INCREMENTAL MATERIALIZED VIEW
- REFRESH MATERIALIZED VIEW
- REINDEX
- RELEASE SAVEPOINT
- RESET
- REVOKE
- ROLLBACK
- ROLLBACK PREPARED
- ROLLBACK TO SAVEPOINT
- SAVEPOINT
- SELECT
- SELECT INTO
- SET
- SET CONSTRAINTS
- SET ROLE
- SET SESSION AUTHORIZATION
- SET TRANSACTION
- SHOW
- SHOW EVENTS
- SHRINK
- SHUTDOWN
- SNAPSHOT
- START TRANSACTION
- TIMECAPSULE TABLE
- TRUNCATE
- UPDATE
- VACUUM
- VALUES
- SQL参考
- GUC参数说明
- Schema
- Information Schema
- DBE_PERF
- OS
- Instance
- Memory
- File
- Object
- STAT_USER_TABLES
- SUMMARY_STAT_USER_TABLES
- GLOBAL_STAT_USER_TABLES
- STAT_USER_INDEXES
- SUMMARY_STAT_USER_INDEXES
- GLOBAL_STAT_USER_INDEXES
- STAT_SYS_TABLES
- SUMMARY_STAT_SYS_TABLES
- GLOBAL_STAT_SYS_TABLES
- STAT_SYS_INDEXES
- SUMMARY_STAT_SYS_INDEXES
- GLOBAL_STAT_SYS_INDEXES
- STAT_ALL_TABLES
- SUMMARY_STAT_ALL_TABLES
- GLOBAL_STAT_ALL_TABLES
- STAT_ALL_INDEXES
- SUMMARY_STAT_ALL_INDEXES
- GLOBAL_STAT_ALL_INDEXES
- STAT_DATABASE
- SUMMARY_STAT_DATABASE
- GLOBAL_STAT_DATABASE
- STAT_DATABASE_CONFLICTS
- SUMMARY_STAT_DATABASE_CONFLICTS
- GLOBAL_STAT_DATABASE_CONFLICTS
- STAT_XACT_ALL_TABLES
- SUMMARY_STAT_XACT_ALL_TABLES
- GLOBAL_STAT_XACT_ALL_TABLES
- STAT_XACT_SYS_TABLES
- SUMMARY_STAT_XACT_SYS_TABLES
- GLOBAL_STAT_XACT_SYS_TABLES
- STAT_XACT_USER_TABLES
- SUMMARY_STAT_XACT_USER_TABLES
- GLOBAL_STAT_XACT_USER_TABLES
- STAT_XACT_USER_FUNCTIONS
- SUMMARY_STAT_XACT_USER_FUNCTIONS
- GLOBAL_STAT_XACT_USER_FUNCTIONS
- STAT_BAD_BLOCK
- SUMMARY_STAT_BAD_BLOCK
- GLOBAL_STAT_BAD_BLOCK
- STAT_USER_FUNCTIONS
- SUMMARY_STAT_USER_FUNCTIONS
- GLOBAL_STAT_USER_FUNCTIONS
- Workload
- Session/Thread
- SESSION_STAT
- GLOBAL_SESSION_STAT
- SESSION_TIME
- GLOBAL_SESSION_TIME
- SESSION_MEMORY
- GLOBAL_SESSION_MEMORY
- SESSION_MEMORY_DETAIL
- GLOBAL_SESSION_MEMORY_DETAIL
- SESSION_STAT_ACTIVITY
- GLOBAL_SESSION_STAT_ACTIVITY
- THREAD_WAIT_STATUS
- GLOBAL_THREAD_WAIT_STATUS
- LOCAL_THREADPOOL_STATUS
- GLOBAL_THREADPOOL_STATUS
- SESSION_CPU_RUNTIME
- SESSION_MEMORY_RUNTIME
- STATEMENT_IOSTAT_COMPLEX_RUNTIME
- LOCAL_ACTIVE_SESSION
- Transaction
- Query
- STATEMENT
- SUMMARY_STATEMENT
- STATEMENT_COUNT
- GLOBAL_STATEMENT_COUNT
- SUMMARY_STATEMENT_COUNT
- GLOBAL_STATEMENT_COMPLEX_HISTORY
- GLOBAL_STATEMENT_COMPLEX_HISTORY_TABLE
- GLOBAL_STATEMENT_COMPLEX_RUNTIME
- STATEMENT_RESPONSETIME_PERCENTILE
- STATEMENT_COMPLEX_RUNTIME
- STATEMENT_COMPLEX_HISTORY_TABLE
- STATEMENT_COMPLEX_HISTORY
- STATEMENT_WLMSTAT_COMPLEX_RUNTIME
- STATEMENT_HISTORY
- Cache/IO
- STATIO_USER_TABLES
- SUMMARY_STATIO_USER_TABLES
- GLOBAL_STATIO_USER_TABLES
- STATIO_USER_INDEXES
- SUMMARY_STATIO_USER_INDEXES
- GLOBAL_STATIO_USER_INDEXES
- STATIO_USER_SEQUENCES
- SUMMARY_STATIO_USER_SEQUENCES
- GLOBAL_STATIO_USER_SEQUENCES
- STATIO_SYS_TABLES
- SUMMARY_STATIO_SYS_TABLES
- GLOBAL_STATIO_SYS_TABLES
- STATIO_SYS_INDEXES
- SUMMARY_STATIO_SYS_INDEXES
- GLOBAL_STATIO_SYS_INDEXES
- STATIO_SYS_SEQUENCES
- SUMMARY_STATIO_SYS_SEQUENCES
- GLOBAL_STATIO_SYS_SEQUENCES
- STATIO_ALL_TABLES
- SUMMARY_STATIO_ALL_TABLES
- GLOBAL_STATIO_ALL_TABLES
- STATIO_ALL_INDEXES
- SUMMARY_STATIO_ALL_INDEXES
- GLOBAL_STATIO_ALL_INDEXES
- STATIO_ALL_SEQUENCES
- SUMMARY_STATIO_ALL_SEQUENCES
- GLOBAL_STATIO_ALL_SEQUENCES
- GLOBAL_STAT_DB_CU
- GLOBAL_STAT_SESSION_CU
- Utility
- REPLICATION_STAT
- GLOBAL_REPLICATION_STAT
- REPLICATION_SLOTS
- GLOBAL_REPLICATION_SLOTS
- BGWRITER_STAT
- GLOBAL_BGWRITER_STAT
- GLOBAL_CKPT_STATUS
- GLOBAL_DOUBLE_WRITE_STATUS
- GLOBAL_PAGEWRITER_STATUS
- GLOBAL_RECORD_RESET_TIME
- GLOBAL_REDO_STATUS
- GLOBAL_RECOVERY_STATUS
- CLASS_VITAL_INFO
- USER_LOGIN
- SUMMARY_USER_LOGIN
- GLOBAL_GET_BGWRITER_STATUS
- GLOBAL_SINGLE_FLUSH_DW_STATUS
- GLOBAL_CANDIDATE_STATUS
- Lock
- Wait Events
- Configuration
- Operator
- Workload Manager
- Global Plancache
- RTO
- DBE_PLDEBUGGER Schema
- DBE_PLDEBUGGER.turn_on
- DBE_PLDEBUGGER.turn_off
- DBE_PLDEBUGGER.local_debug_server_info
- DBE_PLDEBUGGER.attach
- DBE_PLDEBUGGER.info_locals
- DBE_PLDEBUGGER.next
- DBE_PLDEBUGGER.continue
- DBE_PLDEBUGGER.abort
- DBE_PLDEBUGGER.print_var
- DBE_PLDEBUGGER.info_code
- DBE_PLDEBUGGER.step
- DBE_PLDEBUGGER.add_breakpoint
- DBE_PLDEBUGGER.delete_breakpoint
- DBE_PLDEBUGGER.info_breakpoints
- DBE_PLDEBUGGER.backtrace
- DBE_PLDEBUGGER.disable_breakpoint
- DBE_PLDEBUGGER.enable_breakpoint
- DBE_PLDEBUGGER.finish
- DBE_PLDEBUGGER.set_var
- DB4AI Schema
- DBE_PLDEVELOPER
- DBE_SQL_UTIL Schema
- 工具参考
- 工具一览表
- 客户端工具
- 服务端工具
- 系统内部使用的工具
- dsscmd
- dssserver
- mogdb
- gs_backup
- gs_basebackup
- gs_ctl
- gs_initdb
- gs_install
- gs_postuninstall
- gs_preinstall
- gs_sshexkey
- gs_tar
- gs_uninstall
- gs_upgradectl
- gs_expansion
- gs_dropnode
- gs_probackup
- gstrace
- kdb5_util
- kadmin.local
- kinit
- klist
- krb5kdc
- kdestroy
- pg_config
- pg_controldata
- pg_recvlogical
- pg_resetxlog
- pg_archivecleanup
- pssh
- pscp
- transfer.py
- FAQ
- MogDB可运行脚本功能说明
- gs_collector工具支持收集的系统表和视图列表
- 数据库报错信息
- SQL标准错误码说明
- 第三方库错误码说明
- GAUSS-00001 - GAUSS-00100
- GAUSS-00101 - GAUSS-00200
- GAUSS 00201 - GAUSS 00300
- GAUSS 00301 - GAUSS 00400
- GAUSS 00401 - GAUSS 00500
- GAUSS 00501 - GAUSS 00600
- GAUSS 00601 - GAUSS 00700
- GAUSS 00701 - GAUSS 00800
- GAUSS 00801 - GAUSS 00900
- GAUSS 00901 - GAUSS 01000
- GAUSS 01001 - GAUSS 01100
- GAUSS 01101 - GAUSS 01200
- GAUSS 01201 - GAUSS 01300
- GAUSS 01301 - GAUSS 01400
- GAUSS 01401 - GAUSS 01500
- GAUSS 01501 - GAUSS 01600
- GAUSS 01601 - GAUSS 01700
- GAUSS 01701 - GAUSS 01800
- GAUSS 01801 - GAUSS 01900
- GAUSS 01901 - GAUSS 02000
- GAUSS 02001 - GAUSS 02100
- GAUSS 02101 - GAUSS 02200
- GAUSS 02201 - GAUSS 02300
- GAUSS 02301 - GAUSS 02400
- GAUSS 02401 - GAUSS 02500
- GAUSS 02501 - GAUSS 02600
- GAUSS 02601 - GAUSS 02700
- GAUSS 02701 - GAUSS 02800
- GAUSS 02801 - GAUSS 02900
- GAUSS 02901 - GAUSS 03000
- GAUSS 03001 - GAUSS 03100
- GAUSS 03101 - GAUSS 03200
- GAUSS 03201 - GAUSS 03300
- GAUSS 03301 - GAUSS 03400
- GAUSS 03401 - GAUSS 03500
- GAUSS 03501 - GAUSS 03600
- GAUSS 03601 - GAUSS 03700
- GAUSS 03701 - GAUSS 03800
- GAUSS 03801 - GAUSS 03900
- GAUSS 03901 - GAUSS 04000
- GAUSS 04001 - GAUSS 04100
- GAUSS 04101 - GAUSS 04200
- GAUSS 04201 - GAUSS 04300
- GAUSS 04301 - GAUSS 04400
- GAUSS 04401 - GAUSS 04500
- GAUSS 04501 - GAUSS 04600
- GAUSS 04601 - GAUSS 04700
- GAUSS 04701 - GAUSS 04800
- GAUSS 04801 - GAUSS 04900
- GAUSS 04901 - GAUSS 05000
- GAUSS 05001 - GAUSS 05100
- GAUSS 05101 - GAUSS 05200
- GAUSS 05201 - GAUSS 05300
- GAUSS 05301 - GAUSS 05400
- GAUSS 05401 - GAUSS 05500
- GAUSS 05501 - GAUSS 05600
- GAUSS 05601 - GAUSS 05700
- GAUSS 05701 - GAUSS 05800
- GAUSS 05801 - GAUSS 05900
- GAUSS 05901 - GAUSS 06000
- GAUSS 06001 - GAUSS 06100
- GAUSS 06101 - GAUSS 06200
- GAUSS 06201 - GAUSS 06300
- GAUSS 06301 - GAUSS 06400
- GAUSS 06401 - GAUSS 06500
- GAUSS 06501 - GAUSS 06600
- GAUSS 06601 - GAUSS 06700
- GAUSS 06701 - GAUSS 06800
- GAUSS 06801 - GAUSS 06900
- GAUSS 06901 - GAUSS 07000
- GAUSS 07001 - GAUSS 07100
- GAUSS 07101 - GAUSS 07200
- GAUSS 07201 - GAUSS 07300
- GAUSS 07301 - GAUSS 07400
- GAUSS 07401 - GAUSS 07500
- GAUSS 50000 - GAUSS 50999
- GAUSS 51000 - GAUSS 51999
- GAUSS 52000 - GAUSS 52999
- GAUSS 53000 - GAUSS 53699
- 错误日志信息参考
- 系统表及系统视图
- 故障诊断指南
- 源码解析
- 常见问题解答 (FAQs)
- 术语表
- 通信矩阵
- Mogeaver
字符处理函数和操作符
相比于原始的MogDB,dolphin对于字符处理函数和操作符的修改主要为:
- 新增
regexp/not regexp/rlike
操作符。 - 新增
locate/lcase/ucase/insert/bin/char/elt/field/find_int_set/hex/space/soundex/export_set/ord/substring_index/from_base64
函数。 - 修改
length/bit_length/octet_length/convert/format/left/right
函数的表现。 - 新增
^
操作符的异或功能,新增like binary/not like binary
操作符。 - 修改
like/not like
操作符的表现。 - 新增
!
操作符,可在表达式前使用,其效果与NOT一致。 - 新增
text_bool/varchar_bool/char_bool
函数。
-
bit_length(string)
描述:字符串的位数。对于二进制输入,将向上补齐至8的倍数。
返回值类型:int
示例:
MogDB=# SELECT bit_length('world'); bit_length ------------ 40 (1 row) MogDB=# SELECT bit_length(b'010'); bit_length ------------ 8 (1 row)
-
insert(des text, start int, length int, src text)
描述:在原字符串的指定位置插入一个新字符串,并从指定位置开始替换掉原字符串一定数量的字符。
返回值类型:text
示例:
MogDB=# select insert('abcdefg', 2, 4, 'yyy'); insert -------- ayyyfg (1 row)
-
lcase(string)
描述:把字符串转化为小写,等价于lower。
返回值类型:varchar
示例:
MogDB=# SELECT lcase('TOM'); lcase ------- tom (1 row)
-
length(string)
描述:获取参数string中字符的数目。对于多字符编码(如中文),返回字节数。
返回值类型:integer
示例:
MogDB=# SELECT length('abcd'); length -------- 4 (1 row) MogDB=# SELECT length('中文'); length -------- 6 (1 row)
-
format(val number, dec_num int [,locale string])
描述:将val以”x,xxx,xxx.xx”的格式返回。val将保留dec_num位小数。保留的小数位数最多为32位,若dec_num大于32,则以保留32位小数返回。若dec_num为0,则返回内容无小数点及小数部分数字。第三个参数可选,可以根据locale指定返回内容的小数点及千位分隔符的格式。如果没有指定第三个参数,或第三个参数值非法,则使用默认值'en_US'。
注意:此format函数针对B兼容数据库使用,与MogDB原有的format函数语义不同。若想使用此语义,请创建B兼容模式数据库,启用MySQL兼容性SQL引擎插件,并将dolphin.b_compatibility_mode设置为TRUE.
返回值类型:text
示例:
MogDB=# CREATE DATABASE B_COMPATIBILITY_DATABASE DBCOMPATIBILITY 'B'; CREATE DATABASE MogDB=# \c B_COMPATIBILITY_DATABASE b_compatibility_database=# CREATE EXTENSION dolphin; CREATE EXTENSION b_compatibility_database=# SET dolphin.b_compatibility_mode = TRUE; SET b_compatibility_database=# select format(1234.4567,2); format ----------- 1,234.46 (1 row) b_compatibility_database=# select format(1234.5,4); format ----------- 1,234.5000 (1 row) b_compatibility_database=# select format(1234.5,0); format ----------- 1,235 (1 row) b_compatibility_database=# select format(1234.5,2,'de_DE'); format ----------- 1.234,50 (1 row)
-
hex(number or string or bytea or bit)
描述:把数字、字符、二进制字符类型或位串类型转换成十六进制表现形式。
注意:MogDB将反斜杠''单独看做一个字符,因此对于字符串'\n',其长度为2。
返回值类型:text
示例:
MogDB=# SELECT hex(256); hex ----- 100 (1 row) MogDB=# select hex('abc'); hex -------- 616263 (1 row) MogDB=# select hex('abc'::bytea); hex -------- 616263 (1 row) MogDB=# select hex(b'1111'); hex ----- 0f (1 row) MogDB=# select hex('\n'); hex ------- 5c6e (1 row)
-
locate(substring, string [,position])
描述:从字符串string的position(缺省时为1)所指的位置开始查找并返回第1次出现子串substring的位置的值。字符串区分大小写。
- 当position为0时,返回0。
- 当position为负数时,从字符串倒数第n个字符往前逆向搜索。n为position的绝对值。
返回值类型:integer,字符串不存在时返回0。
示例:
MogDB=# SELECT locate('ing', 'string'); locate -------- 4 (1 row) MogDB=# SELECT locate('ing', 'string', 0); locate -------- 0 (1 row) MogDB=# SELECT locate('ing', 'string', 5); locate -------- 0 (1 row)
-
octet_length(string)
描述:等价于length。
返回值类型:int
示例:
MogDB=# SELECT octet_length('中文'); octet_length -------------- 6 (1 row)
-
source_string regexp pattern
描述:正则表达式的模式匹配操作符。
source_string为源字符串,pattern为正则表达式匹配模式。
返回值类型:integer(0或1)
示例:
MogDB=# SELECT 'str' regexp '[ac]' AS RESULT; result -------- 0 (1 row)
-
source_string not regexp pattern
描述:regexp的结果取反。
source_string为源字符串,pattern为正则表达式匹配模式。
返回值类型:integer(0或1)
示例:
MogDB=# SELECT 'str' not regexp '[ac]' AS RESULT; result -------- 1 (1 row)
-
source_string rlike pattern
描述:等价于regexp。
source_string为源字符串,pattern为正则表达式匹配模式。
返回值类型:integer(0或1)
示例:
MogDB=# SELECT 'str' rlike '[ac]' AS RESULT; result -------- 0 (1 row)
-
ucase(string)
描述:把字符串转化为大写。等价于upper。
返回值类型:varchar
示例:
MogDB=# SELECT ucase('tom'); ucase ------- TOM (1 row)
-
bin(number or string)
描述:返回N整型或者数字字符的二进制字符串,汉字返回0。
返回值类型:text
示例:
b_compatibility_database=# SELECT bin('309'); bin ------------ 100110101 (1 row) b_compatibility_database=# SELECT bin('你好'); bin --- 0 (1 row)
-
char(any)
描述:根据ASCII码对多个数字转换为多个字符。
返回值类型:text
示例:
b_compatibility_database=# select char(77,77.3,'77.3','78.8',78.8); char ------- MMMNO (1 row)
-
char_length(string)或character_leng(string)
描述:字符串中的字符个数,一个汉字长度为1,并且支持二进制类型。
返回值类型:int
示例:
MogDB=# SELECT char_length('hello'); char_length ------------- 5 (1 row) b_compatibility_database=# SELECT char_length(B'101'); char_length ------------- 1 (1 row)
-
convert(expr using transcoding_name)
描述:通过transcoding_name指定的编码方式转换expr;
注意:默认库中支持如下格式: convert(string bytea, src_encoding name, dest_encoding name);以dest_encoding指定的编码方式转换bytea,dolphin下支持通过using关键字后transcoding_name指定要转换的编码方式,对expr进行转换,不支持上述三个参数的表示方式。
返回值类型:text
示例:
b_compatibility_database=# select convert('a' using 'utf8'); convert --------- a (1 row) b_compatibility_database=# select convert('a' using utf8); convert --------- a (1 row)
-
elt(number, str1,str2,str3,…)
描述:返回后面字符串的第N个字符串。
返回值类型:text
示例:
b_compatibility_database=# select elt(3,'wo','ceshi','disange'); elt --------- disange (1 row)
-
left(str text, n int)
描述:返回字符串的前n个字符。当n是负数时,当做0处理。
返回值类型:text
示例:
test_db=# select left('abcde', 2); left ------ ab (1 row) test_db=# select left('abcde', 0); left ------ (1 row) test_db=# select left('abcde', -2); left ------ (1 row)
-
right(str text, n int)
描述:返回字符串中的后n个字符。当n是负值时,当做0处理。
返回值类型:text
示例:
test_db=# select right('abcde', 2); right ------- de (1 row) test_db=# select right('abcde', 0); right ------- (1 row) test_db=# select right('abcde', -2); right ------- (1 row)
-
mid(str text, pos int, len int)
描述:返回str字符串从pos开始,长度为len个字符的子字符串。如果pos为负数,则从末尾开始计算位置。
返回值类型:text
示例:
db_m=# select mid('abcdef', 2, 2); mid ----- bc (1 row) db_m=# select mid('abcdef', -2, 2); mid ----- ef (1 row)
-
field(str, str1,str2,str3,…)
描述:获取str在后面strn中的位置,不区分大小写。
返回值类型:int
示例:
b_compatibility_database=# select field('ceshi','wo','ceshi','disange'); field ------- 2 (1 row)
-
find_in_set(str, strlist)
描述:获取str在后面strlist中的位置,不区分大小写,strlist以,分割。
返回值类型:int
示例:
b_compatibility_database=# select find_in_set('ceshi','wo','ceshi,ni,wo,ta'); find_in_set ------------- 3 (1 row)
-
space(number)
描述:返回N个空格
返回值类型:text
示例:
b_compatibility_database=# select space('5'); space ------- (1 row)
-
soundex(str)
描述:返回描述指定字符串的语音表示的字母数字模式的算法
返回值类型:text
示例:
b_compatibility_database=# select soundex('abcqwcaa'); soundex --------- A120 (1 row)
-
make_set(number, string1, string2, …)
描述:返回一个由number中设置了相应位的字符串组成的设置值(包含子字符串的字符串,以,分隔)。string1对应位0,string2对应位1,依此类推。 string1,string2,…中的NULL值不添加到结果中。
返回值类型:text
select make_set(1|4, 'one', 'two', NULL, 'four'); make_set ---------- one (1 row)
-
^
描述:实现两个字符串的异或功能,截取第一个非数值型符号前的内容作异或。
返回值类型:INT
示例:
MogDB=# SELECT '123a'^'123'; ?column? --------- 0 (1 row)
-
like/not like
描述:判断字符串能否匹配上LIKE后的模式字符串。MogDB的原like为大小写敏感匹配,现将其改为当
dolphin.b_compatibility_mode
为TRUE
时大小写不敏感匹配,当dolphin.b_compatibility_mode
为FALSE
时大小写敏感匹配。若字符串与提供的模式匹配,则like表达式返回真(ilike返回假)。注意事项:
- 在dolphin插件中增加了该操作符对true/false的bool类型兼容;
- 对于定长字符串char,若插入表的字符串长度小于指定长度则会在字符串末尾自动填充空格,在dolphin插件中,该操作符处理定长字符串类型时忽略末尾多余空格。
返回值类型:布尔型
示例:
MogDB=# SELECT 'a' like 'A' as result; result ------------ t (1 row) MogDB=# SELECT 'abc' like 'a' as result; result ------------ f (1 row) MogDB=# SELECT 'abc' like 'A%' as result; result ------------ t (1 row) MogDB=# SELECT true like true as result; result ------------ t (1 row)
-
like binary/not like binary
描述:判断字符串能否匹配上LIKE BINARY后的模式字符串,like binary采用大小写敏感模式匹配,若模式匹配则返回真(not like binary返回假),不匹配则返回假(not like binary返回真)。
返回值类型:布尔型
示例:
MogDB=# SELECT 'a' like binary 'A' as result; result ------------ f (1 row) MogDB=# SELECT 'a' like binary 'a' as result; result ------------ t (1 row) MogDB=# SELECT 'abc' like binary 'a' as result; result ------------ f (1 row) MogDB=# SELECT 'abc' like binary 'a%' as result; result ------------ t (1 row)
-
substring_index(str, delim, count)
描述:substring_index(str, delim, count)返回str的开始位置至匹配到第count次delim的位置之间的子字符串,count表示匹配的次数。若count为正数,则从str的左边开始匹配,并返回匹配位置左边的子字符串;若count为负数,则从str的右边开始匹配,并返回匹配位置右边的子字符串。count取值范围为INT64_MIN~INT64_MAX。
返回值类型:text
示例:
MogDB=# SELECT substring_index('abcdabcdabcd', 'bcd', 2); substring_index ----------------- abcda (1 row)
-
export_set(bits, on, off, separator, number of bits)
描述:返回一个字符串,该字符串将显示位数。该函数需要5个自变量才能起作用。该函数将第一个参数(即整数)转换为二进制数字,如果二进制数字为1,则返回“on”,如果二进制数字为0,则返回“off”。
返回值类型:text
示例:
MogDB=# SELECT EXPORT_SET(5,'Y','N',',',5); export_set ------------- Y,N,Y,N,N (1 row)
-
FROM_BASE64
描述:根据BASE64编码规则,将一个BASE64编码的字符串解码,返回字符串的解码结果。
返回值类型:text
编码规则:
-
将输入的每三个字节(24位)变成四个字节(32位):6位为一组,高位补两个0,组成一个字节,这样正好能将三个字节补成四个字节,其中每个字节只会对应0(00000000)到63(00111111)。
-
每76个字符加一个换行符。
-
编码0(00000000)到61(00111111)对应A-Z,a-z,0-9共62个字符,62(00111110)的编码是'+',63(00111111)的编码是'/'。
-
若输入的字符串字节数不为三的倍数,那么剩余的字节根据编码规则转换,若有一个字节不满8位,则在低位补0补满8位,同时用'='将转换结果补满四个字节。若最后一组只有两个字节,每6位一组,第三组只有4位,低位要补两个0,然后这三组再分别高位补两个0,转成三个字符,末尾补一个'=';若最后一组只有一个字节,每6位一组,第二组只有2位,低位要补四个0,然后这两组再分别高位补两个0,转成两个字符,末尾补两个'='。
解码规则:
-
将输入的字符串用二进制表示,去掉每个字节高位的两个0。
-
根据编码规则,正确的编码字节数必为4的倍数。若末尾有'=',则根据'='数量去掉最后一个除'='以外的字节低位的0。若末尾有一个'=',即最后四个字节为'***=',则将前三个字节转二进制后再去掉最后两个0,若末尾有两个'=',即最后四个字节为'**==',则将前两个字节转二进制后再去掉最后四个0。
-
将去掉高位0后的各个字节按顺序拼接,每8位转成一个字符。
例子1:YWJj
- 字符串用二进制表示为:00011000(Y)00010110(W)00001001(J)00100011(j)。
- 去掉每个字节高位的两个0后变成:011000 010110 001001 100011。
- 将去掉高位0后的各个字节按顺序拼接成:01100001(a)01100010(b)01100011(c)。
- 故解码结果为abc。
例子2:YWI=
- 字符串用二进制表示为:00011000(Y)00010110(W)00001000(I)。
- 去掉每个字节高位的两个0后变成:011000 010110 001000。
- 由于末尾有一个'=',则第三个字节末尾的0也要去掉再拼接:01100001 01100010。
- 故解码结果为ab。
示例:
MogDB=# SELECT FROM_BASE64('YWJj'); from_base64 ------------- abc (1 row)
-
-
ORD(str)。
描述: 返回str的最左边的字符的数值,并使用下面公式计算该字符组成字节的对应数值:
(1st byte code) + (2nd byte code 256) + (3rd byte code 256^2) ...
返回值类型:INT
示例:
-- test 1 byte MogDB=# select ord('1111'); ord ----- 49 (1 row) MogDB=# select ord('sss111'); ord ----- 115 (1 row) -- test 2 byte MogDB=# select ord('Ŷ1111'); ord ------- 50614 (1 row) MogDB=# select ord('߷1111'); ord ------- 57271 (1 row) -- test 3 byte MogDB=# select ord('অ1111'); ord ---------- 14722693 (1 row) MogDB=# select ord('ꬤ1111'); ord ---------- 15379620 (1 row) -- test 4 byte MogDB=# select ord('𒁖1111'); ord ------------ 4036133270 (1 row) MogDB=# select ord('𓃔1111'); ord ------------ 4036199316 (1 row)
- TO_BASE64(str)
描述:根据BASE64编码规则,将一个字符串编码成BASE64编码格式,返回字符串的编码结果。编码规则与解码规则和FROM_BASE64相同。
返回值类型:text
注意事项
- 如果输入的是NULL,那么返回的结果为NULL。
- 编码解码规则与函数FROM_BASE64相同。
例子1:abc
- 将字符串用二进制表示:01100001(a)01100010(b)01100011(c)
- 将二进制串拆分,每6位一组:011000 010110 001001 100011
- 在每一组的高位都补上两个0:00011000 00010110 00001001 00100011
- 查找base64编码转换表:00011000,00010110,00001001,00100011对应的字符为:Y,W,J,j
- 故编码结果为YWJj
例子2:ab
- 将字符串用二进制表示:01100001(a)01100010(b)
- 将二进制串拆分,每6位一组,由于最后一组只有4位,在低位补0补够6位:011000 010110 0010(00)
- 在每一组的高位都补上两个0:00011000 00010110 00001000
- 查找base64编码转换表:00011000,00010110,00001000对应的字符为:Y,W,I
- 由于输入的字符串字节数不为三的倍数,导致转换后的字符数不为4的倍数,所以最后需要用=号补满4个字节,最终编码结果为:YWI=
示例:
SELECT TO_BASE64('to_base64'); to_base64 -------------- dG9fYmFzZTY0 (1 row) SELECT TO_BASE64('123456'); to_base64 ----------- MTIzNDU2 (1 row) SELECT TO_BASE64('12345'); to_base64 ----------- MTIzNDU= (1 row) SELECT TO_BASE64('1234'); to_base64 ----------- MTIzNA== (1 row)
-
UNHEX(str)
描述:将一个十六进制编码的字符串解码,一个十六进制字符变成4位二进制,两个十六进制字符(8位)解码为一个字符,返回字符串的解码结果。若十六进制字符串的字符数不为偶数,则在高位补0。若输入的是二进制格式的字符串,则返回NULL。
返回值类型:text
注意事项
- 如果输入的是NULL或者包含非十六进制字符,那么返回的结果为NULL。
- 若输入的是数字,则将数字转成字符串后进行解码,如需将十六进制数转为十进制数,则需要使用其它的函数
- 编码解码规则与函数HEX相同。
例子1:4142
- 将每个十六进制字符用4位二进制表示,若十六进制字符数不为偶数,则在高位补0:0100(4)0001(1)0100(4)0010(2)
- 每8位组成一个字符:01000001 01000010
- 故解码结果为AB
示例:
SELECT UNHEX('6f70656e4761757373'); unhex ----------- MogDB (1 row) SELECT UNHEX(HEX('string')); unhex -------- string (1 row) SELECT HEX(UNHEX('1267')); hex ------ 1267 (1 row)
-
!
描述:在表达式前使用,实现逻辑运算“非”。其效果与表达式前使用NOT一致。
返回值类型:boolean
注意事项
- 该运算符仅在
b_compatibility_mode
为TRUE
时可用。 - MogDB原有阶乘运算符"!!"。为避免与本运算符混淆,当
b_compatibility_mode
为TRUE
时,阶乘运算符"!!"与"!"不可使用。请使用函数factorial
替代。 - 当
b_compatibility_mode
为TRUE
时,不允许多个"!"运算符连用。 - 仅有可转换为boolean类型的表达式可使用本操作符。详情查看系统表
pg_cast
。
示例:
MogDB=# set b_compatibility_mode = 1; SET MogDB=# select !10; ?column? ---------- f (1 row) MogDB=# select !true; ?column? ---------- f (1 row) MogDB=# select !!10; ERROR: Operator '!!' is deprecated when b_compatibility_mode is on. Please use function factorial(). MogDB=# select 10!; ERROR: Operator '!' behind expression is deprecated when b_compatibility_mode is on. Please use function factorial().
- 该运算符仅在
-
text_bool(text)
描述:先截取输入文本首部的数值部分(包括整数、小数、正负数),丢弃剩下的非数值部分。若截取得到的数值部分等于0,则函数返回逻辑假;否则函数返回逻辑真。若输入文本首部不是数值,则直接返回逻辑假。
返回类型:boolean
示例:
MogDB=# select text_bool('-0.01abc'); text_bool ----------- t (1 row)
MogDB=# select text_bool('0abc'); text_bool ----------- f (1 row)
MogDB=# select text_bool('abc'); text_bool ----------- f (1 row)
-
varchar_bool(varchar)
描述:先截取输入的变长字符串首部的数值部分(包括整数、小数、正负数),丢弃剩下的非数值部分。若截取得到的数值部分等于0,则函数返回逻辑假;否则函数返回逻辑真。若输入的变长字符串首部不是数值,则直接返回逻辑假。
返回类型:boolean
示例:
MogDB=# select varchar_bool('-0.0100abc'); varchar_bool -------------- t (1 row)
MogDB=# select varchar_bool('0abc'); varchar_bool -------------- f (1 row)
MogDB=# select varchar_bool('abc'); varchar_bool -------------- f (1 row)
-
char_bool(char)
描述:先截取输入字符串首部的数值部分(包括整数、小数、正负数),丢弃剩下的非数值部分。若截取得到的数值部分等于0,则函数返回逻辑假;否则函数返回逻辑真。若输入字符串首部不是数值,则直接返回逻辑假。
返回类型:boolean
示例:
MogDB=# select char_bool('-0.0100abc'); char_bool ----------- t (1 row)
MogDB=# select char_bool('0abc'); char_bool ----------- f (1 row)
MogDB=# select char_bool('abc'); char_bool ----------- f (1 row)