📣
TiDB Cloud Premium is now in public preview. Unlimited growth, instant elasticity, advanced security for enterprise workloads. Try it out →

String Functions



This page provides a comprehensive overview of String functions in TiDB Cloud Lake, organized by functionality for easy reference.

String Concatenation and Manipulation

FunctionDescriptionExample
CONCATConcatenates stringsCONCAT('data', 'lake')'datalake'
CONCAT_WSConcatenates strings with a separatorCONCAT_WS('-', 'data', 'lake')'data-lake'
INSERTInserts a string at a specified positionINSERT('datalake', 5, 0, 'cloud')'datacloudlake'
REPLACEReplaces occurrences of a substringREPLACE('datalake', 'lake', 'cloud')'datacloud'
TRANSLATEReplaces characters with their replacementsTRANSLATE('datalake', 'de', 'DE')'DatalakE'

String Extraction

FunctionDescriptionExample
LEFTReturns leftmost charactersLEFT('datalake', 4)'data'
RIGHTReturns rightmost charactersRIGHT('datalake', 4)'lake'
SUBSTR / SUBSTRINGExtracts a substringSUBSTR('datalake', 5, 4)'lake'
MIDExtracts a substring (alias for SUBSTRING)MID('datalake', 5, 4)'lake'
SPLITSplits a string into an arraySPLIT('data,lake', ',')['data', 'lake']
SPLIT_PARTReturns a specific part after splittingSPLIT_PART('data,lake', ',', 2)'lake'
REGEXP_SPLIT_TO_ARRAYSplit a string into an array of segments using the specified patternregexp_split_to_array('apple,banana,orange', ',');'['apple','banana','orange']'
REGEXP_SPLIT_TO_TABLESplit a string into a table of segments using the specified patternregexp_split_to_table('data,lake', ',', 2)

String Padding and Formatting

FunctionDescriptionExample
LPADLeft-pads a string to a lengthLPAD('lake', 8, 'data')'datalake'
RPADRight-pads a string to a lengthRPAD('data', 8, 'lake')'datalake'
REPEATRepeats a string n timesREPEAT('data', 2)'datadata'
SPACEReturns a string of spacesSPACE(4)' '
REVERSEReverses a stringREVERSE('datalake')'ekalatad'

String Trimming

FunctionDescriptionExample
TRIMRemoves leading and trailing spacesTRIM(' datalake ')'datalake'
TRIM_BOTHRemoves specified chars from both endsTRIM_BOTH('xxdatalakexx', 'x')'datalake'
TRIM_LEADINGRemoves specified chars from startTRIM_LEADING('xxdatalake', 'x')'datalake'
TRIM_TRAILINGRemoves specified chars from endTRIM_TRAILING('datalakexx', 'x')'datalake'
LTRIMRemoves leading spacesLTRIM(' datalake')'datalake'
RTRIMRemoves trailing spacesRTRIM('datalake ')'datalake'

String Information

FunctionDescriptionExample
LENGTHReturns string length in charactersLENGTH('datalake')8
CHAR_LENGTH / CHARACTER_LENGTHReturns string length in charactersCHAR_LENGTH('datalake')8
BIT_LENGTHReturns string length in bitsBIT_LENGTH('datalake')64
OCTET_LENGTHReturns string length in bytesOCTET_LENGTH('datalake')8
INSTRReturns position of first occurrenceINSTR('datalake', 'lake')5
LOCATEReturns position of first occurrenceLOCATE('lake', 'datalake')5
POSITIONReturns position of first occurrencePOSITION('lake' IN 'datalake')5
STRCMPCompares two stringsSTRCMP('datalake', 'datalake')0
JARO_WINKLERReturns similarity between stringsJARO_WINKLER('datalake', 'datalake')1.0

Case Conversion

FunctionDescriptionExample
LOWER / LCASEConverts to lowercaseLOWER('DataLake')'datalake'
UPPER / UCASEConverts to uppercaseUPPER('datalake')'DATALAKE'

Pattern Matching

FunctionDescriptionExample
LIKEPattern matching with wildcards'datalake' LIKE 'data%'true
NOT_LIKENegated LIKE'datalake' NOT LIKE 'cloud%'true
REGEXP / RLIKEPattern matching with regex'datalake' REGEXP '^data'true
NOT_REGEXP / NOT_RLIKENegated regex matching'datalake' NOT REGEXP '^cloud'true
REGEXP_LIKEReturns boolean for regex matchREGEXP_LIKE('datalake', '^data')true
REGEXP_INSTRReturns position of regex matchREGEXP_INSTR('datalake', 'lake')5
REGEXP_SUBSTRReturns substring matching regexREGEXP_SUBSTR('datalake', 'lake')'lake'
REGEXP_REPLACEReplaces regex matchesREGEXP_REPLACE('datalake', 'lake', 'cloud')'datacloud'
GLOBUnix-style pattern matching'datalake' GLOB 'data*'true

Encoding and Decoding

FunctionDescriptionExample
ASCIIReturns ASCII value of first characterASCII('D')68
ORDReturns Unicode code point of first characterORD('D')68
CHAR / CHRReturns string of characters for given Unicode code pointsCHAR(68,97,116,97)'Data'
BINReturns binary representationBIN(5)'101'
OCTReturns octal representationOCT(8)'10'
HEXReturns hexadecimal representationHEX('ABC')'414243'
UNHEXConverts hex to binaryUNHEX('414243')'ABC'
TO_BASE64Encodes to base64TO_BASE64('datalake')'ZGF0YWxha2U='
FROM_BASE64Decodes from base64FROM_BASE64('ZGF0YWxha2U=')'datalake'

Miscellaneous

FunctionDescriptionExample
QUOTEEscapes string for SQLQUOTE('datalake')'"datalake"'
SOUNDEXReturns soundex codeSOUNDEX('datalake')'D42'
SOUNDSLIKECompares soundex valuesSOUNDSLIKE('datalake', 'datalake')true

Was this page helpful?