Вы можете использовать CHARINDEX, чтобы найти PO # в тексте, а затем SUBSTRING, чтобы разобрать номер, если формат соответствует.
;WITH TEMP AS (SELECT 'Based on PO #105680 - Thomas Test GRPO Reciept Validation query test' AS comment )
SELECT comment,
CASE WHEN TEMP.comment LIKE '%PO #%' THEN SUBSTRING(TEMP.comment, CHARINDEX('PO #', TEMP.comment) + 4, CHARINDEX('PO #', TEMP.comment, CHARINDEX(' ', TEMP.comment) + 1) - 4) END AS PO_NUM
FROM TEMP
Ваш запрос будет выглядеть примерно так:
SELECT
[DocEntry]
,[DocNum]
,[DocType]
,[CANCELED]
,[Comments]
,CASE WHEN Comments LIKE '%PO #%' THEN SUBSTRING(Comments, CHARINDEX('PO #', Comments) + 4, CHARINDEX('PO #', Comments, CHARINDEX(' ', Comments) + 1) - 4) END AS PO_NUM
FROM [Billy].[dbo].[OPDN]