本文介紹了如何轉換SQL Server中的一些記錄的處理方法,對大家解決問題具有一定的參考價值,需要的朋友們下面隨著小編來一起學習吧!
問題描述
我有一列包含如下值:
## codel ##
1-829549-305-117
1-1196585-305-119
119.305.1983984.1 // this record
1-224594-305-121
1-1999987-305-121
122.306.113416.1 // this record
1-158059-305-122
1-1083888-305-126
將 119.305.1983984.1 轉換為 1.1983984.305.119 的代碼是:
Code for convert 119.305.1983984.1 to 1.1983984.305.119 is :
DECLARE @myvar varchar(20);
SET @myvar = '119.305.1983984.1';
SELECT
CONCAT(PARSENAME(@myvar, 1), '-',
PARSENAME(@myvar, 2), '-',
PARSENAME(@myvar, 3), '-',
PARSENAME(@myvar, 4))
輸出應該是:
## codel ##
1-829549-305-117
1-1196585-305-119
1-1983984-305-119 // this record has changed
1-224594-305-121
1-1999987-305-121
1-113416-306-122 // this record has changed
1-158059-305-122
推薦答案
你只需要添加這段代碼
SELECT [Codel],
case WHEN (CHARINDEX('.',[Codel]) > 0) then
CONCAT(PARSENAME([Codel], 1), '-',
PARSENAME([Codel], 2), '-',
PARSENAME([Codel], 3), '-',
PARSENAME([Codel], 4))
else [Codel] end
true_template
FROM [TestDB].[dbo].[CodelTbl]
這篇關于如何轉換SQL Server中的一些記錄的文章就介紹到這了,希望我們推薦的答案對大家有所幫助,也希望大家多多支持html5模板網!
【網站聲明】本站部分內容來源于互聯網,旨在幫助大家更快的解決問題,如果有圖片或者內容侵犯了您的權益,請聯系我們刪除處理,感謝您的支持!