2017-11-10 8 views
0

私はドライバと呼ばれるテーブルを持っています。カッコ内の文字列を列から除外し、SQLで別の列として作成する方法

 Driver 
Alex Hendry(2012815381) 
Sam Adams(2524789897) 
Pedro Sanchez(6528719365) 

を次のように表には、私は、私が作成するために、Excelを使用していた以前

 Driver      DriverID 
Alex Hendry(2012815381)   2012815381 
Sam Adams(2524789897)    2524789897 
Pedro Sanchez(6528719365)   6528719365 

を次のようにブラケットに値を持つDriverIDと呼ばれる別の列を作成したいの列を持っているとありますドライバID列。私が使用する式は= MID(B5、SEARCH( "("、B5)+ 1、SEARCH( ")"、B5) - 検索( "("、B5)-1であった)+0

どのようにすることができますSQLで同じ列を作成

Select DRIVER, 
     () as DriverID 
     from driver; 

答えて

0

私はあなたのテーブル名がDriverTableであると仮定:?

SELECT 
    xQ.Driver, 
    SUBSTRING(xQ.Driver,xQ.StartIndex+1,xQ.EndIndex-xQ.StartIndex-1) AS DriverId 

FROM 
(SELECT 
    Driver, 
    PATINDEX('%(%',Driver) AS StartIndex, 
    PATINDEX('%)%',Driver) AS EndIndex 
FROM DriverTable) AS xQ 
0
proc sql; create table dispatch02 as select 
t1.Driver, 
     scan(SCAN(t1.Driver,2,'('),1,')') AS DriverId 
FROM work.TESTACCESS AS t1; 

これは私

のために完全に働きました
関連する問題