Home Forums SQL Server 2008 T-SQL (SS2K8) I need to compare and split the string and then save it in the detail_tb but dont know how ? RE: I need to compare and split the string and then save it in the detail_tb but dont know how ?

  • Its a fairly straight forward Insert, the issue you will have is that you need to define the fk_visbox_id and fk_msgIn_id columns otherwise the Insert will fail as these are non-nullable columns as per your msg_detailIn_Tb DDL.

    ;WITH CTE AS (

    SELECT CHARINDEX(CHARS,@STRING,1) x

    , CAST(REVERSE(LEFT(REVERSE(LEFT(@STRING,

    CHARINDEX(CHARS,@STRING,1)-1)), PATINDEX('%[^0-9,.]%',

    REVERSE(LEFT(@STRING,CHARINDEX(CHARS,@STRING,1)-1)) + 'Z')-1))

    AS VARCHAR(50)) AS RESULT

    FROM @CHARACTERS

    )

    Insert Into @details_Tb

    (mvoltage,mnorth,meast,mtime,mtemperature,mheight,mcompraser,mluman)

    Select

    MAX([1]) Col1,MAX([2]) Col2,MAX([3]) Col3,MAX([4]) Col4,MAX([5]) Col5,MAX([6]) col6,MAX([7]) col7,MAX([8]) col8

    From (

    SELECT 1 pid,ROW_NUMBER() OVER(Order by x) pivotcol,Result FROM CTE WHERE LEN(RESULT)>2) s

    pivot(Max(RESULT) FOR pivotcol in ([1],[2],[3],[4],[5],[6],[7],[8])) pvt

    group by pid

    Ps : Sorry I noticed I missed the last column.

    _________________________________________________________________________
    SSC Guide to Posting and Best Practices