在 SQL Server 中有效找出最終子字串
在 SQL Server 中使用字串通常需要精確定位特定子字串的最後一個實例。雖然 SUBSTRING
和 CHARINDEX
等函數對於子字串提取很有用,但存在更簡潔的方法來查找最終出現的位置。
透過組合 RIGHT()
和 CHARINDEX()
函數可以優雅地處理此任務。為了說明這一點,我們提取資料庫名稱 (DB_NAME()
) 中最後一個底線後面的部分:
<code class="language-sql">SELECT RIGHT(DB_NAME(), CHARINDEX('_', REVERSE(DB_NAME()) + '_') - 1)</code>
查詢巧妙地反轉資料庫名稱,找到最後的下劃線,然後提取其右側的字元。
相反,要提取最後一個底線之前的文字,請使用LEFT()
和CHARINDEX()
:
<code class="language-sql">SELECT LEFT(DB_NAME(), LEN(DB_NAME()) - CHARINDEX('_', REVERSE(DB_NAME()) + '_'))</code>
這會反轉資料庫名稱,標識最後一個底線,並傳回前面的字元。
這些方法為識別 SQL Server 中的最終子字串提供了更清晰、更有效率的解決方案,避免了複雜的字串操作。
以上是如何在 SQL Server 中尋找子字串最後一次出現的位置?的詳細內容。更多資訊請關注PHP中文網其他相關文章!