您好我正在尝试从数据库中检索值。我有一排有多个用“,”分隔的图像名称。我想将它们显示在不同的行中。我正在使用以下代码,它适用于两个值。但即使我有三个或更多的值,它也只返回两个。这是我的查询:
;with tmp(ImageURL,HeritageId) as
(
select LEFT(ImageURL, CHARINDEX(',',ImageURL+',')-1),
STUFF(ImageURL, 1, CHARINDEX(',',ImageURL+','), '')
from shop.dbo.Images where HeritageId=@HeritageId
union all
select right(ImageURL, CHARINDEX(',',ImageURL+',')-1),
STUFF(ImageURL, 1, CHARINDEX(',',ImageURL+','), '')
from Images
where ImageURL > '' and HeritageId=@HeritageId
)
select ImageURL
from tmp