Несоответствие заголовка / тега?
Для Excel, если A1
содержит значение:
Марка B1
=LEFT(A1,IF(ISERROR(FIND(":",A1)),LEN(A1),FIND(":",A1)-1))
сделать C1
=RIGHT(A1,IF(ISERROR(FIND(":",A1)),0,LEN(A1)-FIND(":",A1)))
Или для T-SQL + строковая переменная;
DECLARE @F VARCHAR(64) = '1234:ABCD'
IF @F LIKE '%:%'
SELECT SUBSTRING(@F, 1, CHARINDEX(':', @F, 1) - 1) AS COL1,
SUBSTRING(@F, CHARINDEX(':', @F, 1) + 1, LEN(@F)) AS COL2
ELSE
SELECT @F AS COL1, NULL AS COL2
для выбора;
;WITH faketable (fld) AS (
SELECT 'aaa:123' as fld
UNION SELECT 'ddddd'
)
SELECT
CASE WHEN fld LIKE '%:%' THEN SUBSTRING(fld, 1, CHARINDEX(':', fld, 1) - 1) ELSE fld END AS COL1 ,
CASE WHEN fld LIKE '%:%' THEN SUBSTRING(fld, CHARINDEX(':', fld, 1) + 1, LEN(fld)) ELSE NULL END AS COL2
FROM faketable
>COL1 COL2
>aaa 123
>ddddd NULL