Pytanie SQL Uzyskaj char na pozycji w polu


Jak mogę uzyskać postać na pozycji 4 w polu?

na przykład

zawartość pola = "cześć"

Chcę zwrócić wartość pozycji 2 = "l"


23
2017-09-11 08:58


pochodzenie


Powinieneś podać DBMS, którego używasz (mysql / mssql / oracle / postgresql / sqlite / ...) podczas zadawania pytań związanych z sql (najlepiej, aby dodać odpowiedni tag). Nie dostarczenie go jest jak pytanie, jak sformatować dysk flash bez informowania, co jest twój system operacyjny. - soulmerge


Odpowiedzi:


W SQL Server można użyć SUBSTRING

SELECT SUBSTRING('hello', 3, 1)

Uważaj: indeks jest oparty na 1.


34
2017-09-11 09:01





W Oracle użyj SUBSTR

Składnia to SUBSTR(<string to parse>,<start position>,(<length>)) - tj.

SELECT SUBSTR('hello',3,1)

Pozycja początkowa i długość są jedno-, a nie oparte na zera. Zero jest akceptowane, ale zostanie zinterpretowane jako 1.


5
2017-09-11 09:08





następujący Query wyszuka określony indeks dla znaku i zwróci wynik

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

1
2018-04-12 05:05