T-SQL How to convert comma separated string of numbers to integer

前端 未结 3 2043
挽巷
挽巷 2020-12-21 05:07

I get the error \"Conversion failed when converting the nvarchar value \'23,24,3,45,91,\' to data type int.\" The error seems to be occuring on the ON clause. E.ID is an int

3条回答
  •  自闭症患者
    2020-12-21 06:03

    If LegalIssue contains a string of comma-delimited numbers, then you really want an association table. Lacking that, here is a convenient (but not efficient) way to do the join:

    SELECT F.[FDTitle], E.PrimaryOpID as [FD Primary OP ID], F.County as [FD County],
           F.Status as [FD Status], F.IssueDate as [FD Date]
    FROM [dbo].[tbl_FinalDetMain] F LEFT OUTER JOIN
          [dbo].[tbl_lk_Exemptions_FD] E
          ON ','+F.LegalIssue+',' like '%,'cast(E.ID as varchar(255))+',%'
    WHERE F.[FDNbr] = '2013-0041';
    

    This prepends and postpends the list with commas to avoid conflicts, such as finding "10" in "1,100,1000".

提交回复
热议问题