4,707 questions
Hi @SQL ,
Please try the following solution.
SQL
-- DDL and sample data population, start
DECLARE @tbl TABLE (UID int, Account varchar(50));
INSERT INTO @tbl VALUES
(101, '2021.20.EARNED'),
(102, '2020.20.EARNED'),
(103, '35.CASHED'),
(104, '2019.25.CASHED'),
(105, '15.ECONOMY.CASH');
-- DDL and sample data population, end
SELECT *
, PARSENAME(Account, 3) AS col1
, PARSENAME(Account, 2) AS col2
, PARSENAME(Account, 1) AS col3
FROM @tbl;
Output
+-----+-----------------+------+---------+--------+
| UID | Account | col1 | col2 | col3 |
+-----+-----------------+------+---------+--------+
| 101 | 2021.20.EARNED | 2021 | 20 | EARNED |
| 102 | 2020.20.EARNED | 2020 | 20 | EARNED |
| 103 | 35.CASHED | NULL | 35 | CASHED |
| 104 | 2019.25.CASHED | 2019 | 25 | CASHED |
| 105 | 15.ECONOMY.CASH | 15 | ECONOMY | CASH |
+-----+-----------------+------+---------+--------+