Files
doris/new-docs/en/sql-manual/sql-functions/string-functions/substring.md
jiafeng.zhang c02625efa9 [refactor][doc] Doris official website new version documentation (#8757)
I started a discussion on this before, you can check it in the mail group

https://lists.apache.org/thread/o770bc3k623kyfks2mzkt21qsc4g6328

In order to facilitate everyone to organize the documents, I created a new-docs directory under the incubator-doris directory. The new directory structure is below this. I just created a directory structure here, which needs to be rearranged.

In the data import scenario, in order to take into account the viewing habits of previous users, the import is organized in two ways:

1. According to the usage scenario: This will give users clearer guidance. For example, the user is the data source of kafka, then the user can directly select the routine to load
2. According to the import method: it is the introduction of the various import methods we provided before

In order to facilitate everyone to run and debug locally, I migrated the entire .vuepress under the original document. After completion, you only need to delete the original docs directory and rename the new new-docs directory to docs. At the same time, you can also run it locally, so that you can organize documents and know the content of each document directory.

In the local debugging execution, switch to the new-docs directory and execute the following command:

````
npm install
npm run dev
````
then through the browser
http://ip:port/zh-CN
http://ip:port/en
2022-03-31 12:01:02 +08:00

78 lines
2.4 KiB
Markdown

---
{
"title": "substring",
"language": "en"
}
---
<!--
Licensed to the Apache Software Foundation (ASF) under one
or more contributor license agreements. See the NOTICE file
distributed with this work for additional information
regarding copyright ownership. The ASF licenses this file
to you under the Apache License, Version 2.0 (the
"License"); you may not use this file except in compliance
with the License. You may obtain a copy of the License at
http://www.apache.org/licenses/LICENSE-2.0
Unless required by applicable law or agreed to in writing,
software distributed under the License is distributed on an
"AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
KIND, either express or implied. See the License for the
specific language governing permissions and limitations
under the License.
-->
# substring
## description
### Syntax
`VARCHAR substring(VARCHAR str, INT pos[, INT len])`
The forms without a `len` argument return a substring from string `str` starting at position `pos`.
The forms with a `len` argument return a substring len characters long from string `str`, starting at position pos.
It is also possible to use a negative value for `pos`. In this case,
the beginning of the substring is `pos` characters from the end of the string, rather than the beginning.
A negative value may be used for `pos` in any of the forms of this function.
A value of 0 for `pos` returns an empty string.
For all forms of SUBSTRING(),
the position of the first character in the string from which the substring is to be extracted is reckoned as 1.
If len is less than 1, the result is the empty string.
## example
```
mysql> select substring('abc1', -2);
+-----------------------------+
| substring('abc1', 2) |
+-----------------------------+
| bc1 |
+-----------------------------+
mysql> select substring('abc1', -2);
+-----------------------------+
| substring('abc1', -2) |
+-----------------------------+
| c1 |
+-----------------------------+
mysql> select substring('abc1', 5);
+-----------------------------+
| substring('abc1', 5) |
+-----------------------------+
| NULL |
+-----------------------------+
mysql> select substring('abc1def', 2, 2);
+-----------------------------+
| substring('abc1def', 2, 2) |
+-----------------------------+
| bc |
+-----------------------------+
```
## keyword
SUBSTRING