Las funciones de caracteres aceptan entradas de caracteres y pueden devolver caracteres o valores numéricos como salida. SQL proporciona varios tipos de datos de caracteres diferentes que incluyen: CHAR, VARCHAR, VARCHAR2, LONG, RAW y LONG RAW. Los diversos tipos de datos se clasifican en tres tipos de datos diferentes:
- VARCHAR2 : un tipo de datos de caracteres de longitud variable cuyos datos son convertidos por el RDBMS.
- CHAR : el tipo de datos de longitud fija.
- RAW : un tipo de datos de longitud variable cuyos datos no son convertidos por el RDBMS, sino que se dejan en forma «sin procesar».
Nota: cuando una función de caracteres devuelve un valor de carácter, ese valor siempre es de tipo VARCHAR2 (longitud variable), con las siguientes dos excepciones: SUPERIOR y INFERIOR. Estas funciones convierten a mayúsculas y minúsculas, respectivamente, y devuelven los valores CHAR (longitud fija) si las strings a las que se les llama para convertir son argumentos CHAR de longitud fija .
Funciones de caracteres
SQL proporciona un amplio conjunto de funciones de caracteres que le permiten obtener información sobre strings y modificar el contenido de esas strings de varias maneras. Las funciones de caracteres son de los dos tipos siguientes:
1. Funciones de manipulación de mayúsculas y minúsculas (LOWER, UPPER e INITCAP)
2. Funciones de manipulación de caracteres (CONCAT, LENGTH, SUBSTR, INSTR, LPAD, RPAD, TRIM y REPLACE)
Funciones de manipulación de casos
- LOWER: Esta función convierte valores de caracteres alfabéticos a minúsculas. LOWER en realidad devolverá una string de longitud fija si la string entrante es de longitud fija. LOWER no cambiará ningún carácter de la string que no sean letras, ya que las mayúsculas y minúsculas son irrelevantes para números y caracteres especiales, como el signo de dólar ($) o el módulo (%).
Sintaxis:LOWER(SQL course)
Input1: SELECT LOWER('GEEKSFORGEEKS') FROM DUAL; Output1: geeksforgeeks Input2: SELECT LOWER('DATABASE@456') FROM DUAL; Output2: database@456
- SUPERIOR: esta función convierte los valores de los caracteres alfabéticos a mayúsculas. Además, la función SUPERIOR también devolverá una string de longitud fija si la string entrante es de longitud fija. UPPER no cambiará ningún carácter de la string que no sean letras, ya que las mayúsculas y minúsculas son irrelevantes para números y caracteres especiales, como el signo de dólar ($) o el módulo (%).
Sintaxis:UPPER(SQL course)
Input1: SELECT UPPER('geeksforgeeks') FROM DUAL; Output1: GEEKSFORGEEKS Input2: SELECT UPPER('dbms$508%7') FROM DUAL; Output2: DBMS$508%7
- INITCAP: esta función convierte los valores de los caracteres alfabéticos en mayúsculas para la primera letra de cada palabra y todos los demás en minúsculas. Las palabras en la string deben estar separadas por # o _ o espacio.
Sintaxis:INITCAP(SQL course)
Input1: SELECT INITCAP('geeksforgeeks is a computer science portal for geeks') FROM DUAL; Output1: Geeksforgeeks Is A Computer Science Portal For Geeks Input2: SELECT INITCAP('PRACTICE_CODING_FOR_EFFICIENCY') FROM DUAL; Output2: Practice_Coding_For_Efficiency
Funciones de manipulación de caracteres
- CONCAT: esta función siempre agrega (concatena) string2 al final de string1. Si alguna de las strings es NULL, la función CONCAT devuelve el argumento no NULL. Si ambas strings son NULL, CONCAT devuelve NULL.
Sintaxis:CONCAT('String1', 'String2')
Input1: SELECT CONCAT('computer' ,'science') FROM DUAL; Output1: computerscience Input2: SELECT CONCAT( NULL ,'Android') FROM DUAL; Output2: Android Input3: SELECT CONCAT( NULL ,NULL ) FROM DUAL; Output3: -
- LONGITUD: esta función devuelve la longitud de la string de entrada. Si la string de entrada es NULL, entonces la función LENGTH devuelve NULL y no Zero. Además, si la string de entrada contiene espacios extra al principio, o en el medio o al final de la string, la función LENGTH también incluye los espacios extra y devuelve la longitud completa de la string.
Sintaxis:LENGTH(Column|Expression)
Input1: SELECT LENGTH('Learning Is Fun') FROM DUAL; Output1: 15 Input2: SELECT LENGTH(' Write an Interview Experience ') FROM DUAL; Output2: 34 Input3: SELECT LENGTH('') FROM DUAL; or SELECT LENGTH( NULL ) FROM DUAL; Output3: -
- SUBSTR: esta función devuelve una parte de una string desde un punto de inicio dado hasta un punto final. Si no se proporciona una longitud de substring, SUBSTR devuelve todos los caracteres hasta el final de la string (desde la posición inicial especificada).
Sintaxis:SUBSTR('String',start-index,length_of_extracted_string)
Input1: SELECT SUBSTR('Database Management System', 9) FROM DUAL; Output1: Management System Input2: SELECT SUBSTR('Database Management System', 9, 7) FROM DUAL; Output2: Manage
- INSTR: esta función devuelve la posición numérica de un carácter o una string en una string dada. Opcionalmente, puede proporcionar una posición m para comenzar a buscar y la ocurrencia n de la string. Además, si no se proporciona la posición inicial, entonces comienza la búsqueda desde el índice 1, de forma predeterminada. Si después de buscar en la string, no se encuentra ninguna coincidencia, la función INSTR devuelve 0.
Syntax: INSTR(Column|Expression, 'String', [,m], [n])
Input: SELECT INSTR('Google apps are great applications','app',1,2) FROM DUAL; Output: 23
- LPAD y RPAD: Estas funciones devuelven las strings rellenadas a la izquierda oa la derecha (según el uso); de ahí la “L” en “LPAD” y la “R” en “RPAD”; a una longitud especificada y con una string de pad especificada. Si no se especifica la string de relleno, entonces la string dada se rellena a la izquierda o a la derecha (según el uso) con espacios.
Sintaxis:LPAD(Column|Expression, n, 'String') Syntax: RPAD(Column|Expression, n, 'String')
LPAD Input1: SELECT LPAD('100',5,'*') FROM DUAL; LPAD Output1: **100 LPAD Input2: SELECT LPAD('hello', 21, 'geek') FROM DUAL; LPAD Output2: geekgeekgeekgeekhello RPAD Input1: SELECT RPAD('5000',7,'*') FROM DUAL; RPAD Output1: 5000*** RPAD Input1: SELECT RPAD('earn', 19, 'money') FROM DUAL; RPAD Output1: earnmoneymoneymoney
- TRIM: esta función recorta la entrada de string desde el principio o el final (o ambos). Si no se especifica ninguna string o carácter para recortar de la string y existe algún espacio adicional al principio o al final de la string, esos espacios adicionales se eliminan.
Syntax:
TRIM(Leading|Trailing|Both, trim_character FROM trim_source)
Input1: SELECT TRIM('G' FROM 'GEEKS') FROM DUAL; Output1: EEKS Input2: SELECT TRIM(' geeksforgeeks ') FROM DUAL; Output2:geeksforgeeks
- REEMPLAZAR: esta función busca una string de caracteres y, si la encuentra, la reemplaza con una string de reemplazo determinada en todas las apariciones de la string. REEMPLAZAR es útil para buscar patrones de caracteres y luego cambiar todas las instancias de ese patrón en una sola llamada de función.
Si no se proporciona una string de reemplazo, la función REEMPLAZAR elimina todas las apariciones de esa string de caracteres en la string de entrada. Si no se especifica una string coincidente ni una string de reemplazo, REPLACE devuelve NULL.Sintaxis:
REPLACE(Text, search_string, replacement_string)
Input1: SELECT REPLACE('DATA MANAGEMENT', 'DATA','DATABASE') FROM DUAL; Output1: DATABASE MANAGEMENT Input2: SELECT REPLACE('abcdeabcccabdddeeabcc', 'abc') FROM DUAL; Output2: deccabdddeec
Este artículo es una contribución de Anshika Goyal. Si le gusta GeeksforGeeks y le gustaría contribuir, también puede escribir un artículo usando contribuya.geeksforgeeks.org o envíe su artículo por correo a contribuya@geeksforgeeks.org. Vea su artículo que aparece en la página principal de GeeksforGeeks y ayude a otros Geeks.
Escriba comentarios si encuentra algo incorrecto o si desea compartir más información sobre el tema tratado anteriormente.
Publicación traducida automáticamente
Artículo escrito por GeeksforGeeks-1 y traducido por Barcelona Geeks. The original can be accessed here. Licence: CCBY-SA