Convert snake_case to camelCase in SQL Server
sqlSQLsql-serverstringscte
Replace every underscore and capitalise the letter after it, so abcd_abcd_abcd becomes abcdAbcdAbcd. A recursive CTE handles any number of underscores. The code below creates a temporary table with two sample values.
DROP TABLE IF EXISTS #YourTableName;
CREATE TABLE #YourTableName (yourColumn VARCHAR(20));
INSERT INTO #YourTableName VALUES ('abcd_abcd_abcd'), ('dfredsdfsf');
;WITH CTE AS
(
SELECT
ISNULL(STUFF(yourColumn, CHARINDEX('_', yourColumn), 2, UPPER(SUBSTRING(yourColumn, CHARINDEX('_', yourColumn) + 1, 1))), yourColumn) AS yourColumn,
CHARINDEX('_', yourColumn) AS b,
0 AS num
FROM
#YourTableName a
UNION ALL
SELECT
STUFF(yourColumn, CHARINDEX('_', yourColumn), 2, UPPER(SUBSTRING(yourColumn, CHARINDEX('_', yourColumn) + 1, 1))) AS a,
CHARINDEX('_', yourColumn) AS b,
num + 1 AS num
FROM
CTE a
WHERE
b > 0
)
SELECT
*
FROM
CTE
WHERE
yourColumn IS NOT NULL
AND CHARINDEX('_', yourColumn) = 0;
Comments
Loading comments…