我有以下描述:“示例产品制造商产品名称 XYZ - 尺寸”,我只想从中获取值“产品名称 XYZ”。如果这只是一行,我只使用 SUBSTRING 就没有问题,但我有数千条记录,尽管所有产品的初始值 Sample Product Maker 都相同,但 Product Name 可能不同,并且我不想要任何东西之后连字符。
到目前为止,我在这个问题的标题中产生了错误。
SELECT i.Itemid,
RTRIM(LTRIM(SUBSTRING(i.ShortDescription, 25, (SUBSTRING(i.ShortDescription, 25, CHARINDEX('-', i.ShortDescription, 25)))))) AS ProductDescriptionAbbrev,
CHARINDEX('-', i.ShortDescription, 0) - 25 as charindexpos
FROM t_items i
我收到“参数数据类型 varchar 对子字符串函数的参数 3 无效”
如您所见,我得到了 sql 语句最后一行的值,但是当我尝试将其插入 SUBSTRING 函数时,我遇到了各种问题。