2009-09-11 5 views
20

Comment puis-je obtenir le caractère à la position 4 dans un champ?SQL Obtenir un caractère à la position

par exemple.

contenu du champ = "bonjour"

Je veux retourner la valeur de la position 2 = "l"

+1

Vous devez fournir le SGBD que vous utilisez (MySQL/MSSQL/oracle/postgresql/sqlite/...) lorsque vous posez des questions sur sql (mieux vaut ajouter la balise appropriée). Ne pas le fournir, c'est comme demander comment formater un lecteur flash sans dire ce que votre système d'exploitation est. – soulmerge

Répondre

29

Dans SQL Server, vous pouvez utiliser SUBSTRING

SELECT SUBSTRING('hello', 3, 1) 

Attention: index est Basé sur 1.

5

Dans Oracle, l'utilisation SUBSTR

Syntaxe est SUBSTR(<string to parse>,<start position>,(<length>)) - à savoir

SELECT SUBSTR('hello',3,1) 

Position de départ et la durée sont un, ne commence à zéro. Zéro est acceptée, mais sera interprété comme 1.

1

suivant Query recherche d'index spécifique pour l'omble chevalier et retournera résultat

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