2009-09-11 14 views
20

¿Cómo puedo obtener el personaje en la posición 4 en un campo?SQL Obtener char en la posición en el campo

p. Ej.

contenido del campo = "hola"

Quiero devolver el valor de la posición 2 = "l"

+1

Debe proporcionar el DBMS que está usando (MySQL/MSSQL/Oracle/postgresql/sqlite/...) cuando se formulan preguntas relacionadas con sql (lo mejor es agregar la etiqueta adecuada). No proporcionarlo es como preguntar cómo formatear una unidad flash sin decir cuál es tu sistema operativo. – soulmerge

Respuesta

29

En SQL Server, puede utilizar SUBSTRING

SELECT SUBSTRING('hello', 3, 1) 

ATENCIÓN: índice es 1 basado.

5

En Oracle, el uso SUBSTR

sintaxis es SUBSTR(<string to parse>,<start position>,(<length>)) - es decir

SELECT SUBSTR('hello',3,1) 

posición de inicio y la longitud son de uno, no basado en cero. Cero es aceptado, pero se interpretará como 1.

1

siguiente consulta buscará a partir índice específico para el carbón y volverá resultado

select * from tbPatientMaster 
where SUBSTRING (fname,CHARINDEX ('.',fname,0)+1,LEN (fname)) like 'a%' 
Cuestiones relacionadas