SQL Server 通過REVERSE實現C#中lastIndexOf的效果
有時候我們會在SQL中碰到這樣的需求,要查詢某個字串最一個字元以後的字串!最近閒著看了下資料實現了這個!其實思路就是和C#中的lastIndexOf是一個道理。只要找到這個字元最後一次出現的位置就OK。
因為SQL中並沒有直接提供這樣的函式,所以我們可以利用CHARINDEX:查詢字元第一次出現的位置、REVERSE:反轉字串 這2個函式結合達到目的。
廢話不多說,好了以下貼上程式碼和註釋:
以上有不明白的地方也可以在評論中說出來!
另外 自己可以把這個封裝為一個標量函式做為通用!
CREATE FUNCTION [dbo].[fn_lastIndexOf]
(
@char NVARCHAR(10) ,
@str NVARCHAR(200)
)
RETURNS INT
AS
BEGIN
RETURN CASE WHEN CHARINDEX(@char, @str) = 0 THEN 0 ELSE LEN(@str) - CHARINDEX(REVERSE(@char),REVERSE(@str)) END
END
GO
--擷取最後一個“-”以後的字串
SELECT dbo.fn_lastIndexOf('-','網商使用者標-立即申請-未通過稽核')
SELECT dbo.fn_lastIndexOf('-','as-d2-asdf6-5161-未通過稽核-hello word')
由請喊我大龍哥最後編輯於:3年前
內容均為作者獨立觀點,不代表八零IT人立場,如涉及侵權,請及時告知。
相關文章
- Flutter 中通過 Container 實現時間軸效果FlutterAI
- 通過Python實現對SQL Server 資料檔案大小的監控告警PythonSQLServer
- 關於SQL Server中儲存過程在C#中呼叫的簡單示例SQLServer儲存過程C#
- 如何在SQL Server中實現 Limit m,n 的功能SQLServerMIT
- Hadoop(三)通過C#/python實現Hadoop MapReduceHadoopC#Python
- 通過 ProxySQL 在 TiDB 上實現 SQL 的規則化路由SQLTiDB路由
- DFA在C#中的實現:過濾敏感詞C#
- 通過C#實現OPC-UA服務端(二)C#服務端
- Zabbix透過PSK共享金鑰實現Server和Agent的通訊加密Server加密
- EXCEL資料上傳到SQL SERVER中的簡單實現方法ExcelSQLServer
- 實現通過COM元件方式實現java呼叫C#寫的DLL檔案的完整demo元件JavaC#
- 使用SQL SERVER儲存過程實現歷史資料遷移SQLServer儲存過程
- SQL Server通過建立臨時表遍歷更新資料SQLServer
- Spring中通過Annotation來實現AOPSpring
- SQL Server實戰六:T-SQL、遊標、儲存過程的操作SQLServer儲存過程
- [SQL Server玩轉Python] 三.SQL Server儲存過程實現Python鳶尾花決策樹訓練及預測SQLServerPython儲存過程
- 通過佇列實現棧OR通過棧實現佇列佇列
- SQL Server 2008中Analysis Services的新特性——深入SQL Server 2008SQLServer
- Sql Server 資料庫中呼叫dll檔案的過程SQLServer資料庫
- Ms Sql Server查詢儲存過程中的內容SQLServer儲存過程
- 如何在CSS中對映的滑鼠位置,並實現通過滑鼠移動控制頁面元素效果CSS
- c#連線SQL Server資料庫C#SQLServer資料庫
- C# NModbus RTU通訊實現C#
- SQL Server 生成C#公共實體屬性和私有屬性SQLServerC#
- C#通過rabbitmq實現定時任務(延時佇列)C#MQ佇列
- SQL Server的Merge —— 一步實現 insert,update,deleteSQLServerdelete
- PostgreSQL、Oracle/MySQL和SQL Server的MVCC實現原理方式OracleMySqlServerMVC
- 【譯】CSS遮罩實現過渡效果CSS遮罩
- SQL Server 中的 ACID 屬性SQLServer
- c#實現最簡單的socket通訊C#
- c# 實現定義一套中間SQL可以跨庫執行的SQL語句C#SQL
- 通過PureRender和Immutable實現React中的效能優化React優化
- SQL SERVER 學習過程(一)SQLServer
- SQL SERVER實用技巧SQLServer
- LRU 實現 通過 LinkedHashMapHashMap
- 通過模板實現POI
- C#實現ADH815通訊C#
- Swoole 中通過 process 模組實現多程式