返回首页

gbase数据、南大通用产品文档:GBase8a

更新日期:2024年09月11日

GBA-03GA-0007
错误码
错误标识
错误信息
GBA-03GA-000
7

beyond max num
错误出现原因
添加节点个数超过最大范围
分析与建议
超过集群最多支持的节点个数

语法格式
LOCATE(substr,str)
LOCATE(substr,str,pos)
函数说明

第一种语法返回子串substr 在字符串str 中第一次出现的位置,
LOCATE(substr,str)与INSTR(str,substr)相似,只是参数的位置被颠倒;

第二种语法返回子串substr 在字符串str 中的第pos 位置后第一次出现的位
置。
说明

如果substr 不在str 中,则返回0;

substr 在str 中的位置,以1 开始计数;

如果pos 值大于str 的长度,则返回为0;

如果pos 为NULL,则返回NULL。
示例
示例1:返回“bar”在“foobarbar”中第一次出现的位置。
gbase> SELECT LOCATE('bar', 'foobarbar') FROM dual;

GBase 8a MPP Cluster 产品手册
5 数据库管理指南
文档版本953(2022-04-10)
南大通用数据技术股份有限公司
695
+----------------------------+
| LOCATE('bar', 'foobarbar') |
+----------------------------+
|
4 |
+----------------------------+
1 row in set
示例2:“xbar”不在“foobar”中,返回值为0。
gbase> SELECT LOCATE('xbar', 'foobar') FROM dual;
+--------------------------+
| LOCATE('xbar', 'foobar') |
+--------------------------+
|
0 |
+--------------------------+
1 row in set
示例3:返回“bar”在“foobarbar”中的第5 位后,第一次出现的位置。
gbase> SELECT LOCATE('bar', 'foobarbar',5) FROM dual;
+------------------------------+
| LOCATE('bar', 'foobarbar',5) |
+------------------------------+
|
7 |
+------------------------------+
1 row in set
示例4:如有任一参数是一个二进制字符串,它是字母大小写敏感的。
gbase> SELECT LOCATE(BINARY'bAr', 'foobarbar',5) FROM dual;
+------------------------------------+
| LOCATE(BINARY'bAr', 'foobarbar',5) |
+------------------------------------+
|
0 |
+------------------------------------+
1 row in set

|
+------+------+------+--------+-------------------------------------
800000 rows in set
导出SQL 语句:
gbase> SELECT * FROM test INTO OUTFILE '/home/gbase/temp/test.tbl'
fields terminated by ‘|’ with head;
Query OK, 800000 rows affected
查看导出文件:
$ cat test.tbl
ps_partkey| ps_suppkey| ps_availqty| ps_supplycost| ps_comment
1|2|3325|771.64|, even theodolites. Regular

GBase 8a MPP Cluster 产品手册
5 数据库管理指南
文档版本953(2022-09-15)
南大通用数据技术股份有限公司
1241
1|2502|8076|993.49|ven ideas. quickly
1|5002|3956|337.09|after the fluffily ironic
......
......