簡體   English   中英

sql查詢操作字符串

[英]sql query to manipulate strings

我有一個名為“ path”的表,其中有一列名為“ path file name”,它包含如下內容:

1. U:01.03.141878Box1819P3FarihaTanzir(Moniruzzaman)0103141(756).jpg
2. U:01.03.141876Box1807P3Arif(Mahfuz)151213Picture 96609.jpg 
3. U:01.03.141130Box1781P3RakhiSwpna(Farah)0103141 (1486).jpg 
4. U:01.03.141952Box1810P1Sufia(Jakia)010314Picture 25304.jpg

我想在第一個braces()中獲得名稱,例如:1.Moniruzzaman 2.Mahfuz 3.Farah 4.Jakia

我已經將patindex(),charindex()和substring函數與左右結合使用,但無法獲得所需的結果。

這是使用stuff()兩次的方法:

select stuff(stuff(col, charindex(')', col), len(col), ''),
                   1, charindex('(', col), '')

您可以通過添加以下內容進行測試:

from (select 'asbc(axx)asfdsf(123)d' as col) t

這假定第一封閉括號( ) )的第一開口括號之后出現( ( )。

嘗試這個 :-

Declare @var varchar(100) 
Set @var ='U:01.03.141878Box1819P3FarihaTanzir(Moniruzzaman)0103141(756).jpg'

Select substring(@var,
                charindex('(',@var)+1,
                                   charindex(')',@var)-charindex('(',@var)-1)

SQL FIDDLE DEMO

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM