本文介紹了兩個(gè)字符之間的變長(zhǎng)子串的處理方法,對(duì)大家解決問(wèn)題具有一定的參考價(jià)值,需要的朋友們下面隨著小編來(lái)一起學(xué)習(xí)吧!
問(wèn)題描述
數(shù)據(jù)如下所示:
Initiative: Credible Sources;
Initiative: Just in Time;
Initiative: Database Normalization;
我希望它看起來(lái)像這樣:
I want it to look like this:
Credible Sources
Just in Time
Database Normalization
擺脫其中一個(gè)非常簡(jiǎn)單.
It's pretty simple to get rid of one or the other.
這個(gè):
SELECT DISTINCT LEFT(OPTIONAL_FIELD_2, CHARINDEX(';', OPTIONAL_FIELD_2 + ';')-1) AS OPTIONAL_FIELD_2
FROM my_table
ORDER BY OPTIONAL_FIELD_2
給我這個(gè):倡議:可靠來(lái)源倡議:及時(shí)倡議:數(shù)據(jù)庫(kù)規(guī)范化
Gives me this: Initiative: Credible Sources Initiative: Just in Time Initiative: Database Normalization
還有這個(gè):
SELECT DISTINCT RIGHT(OPTIONAL_FIELD_2, LEN(OPTIONAL_FIELD_2)-12) AS OPTIONAL_FIELD_2
FROM my_table
ORDER BY OPTIONAL_FIELD_2
給我這個(gè):
Credible Sources;
Just in Time;
Database Normalization;
很難弄清楚如何將兩者結(jié)合起來(lái).
Having a hard time figuring out how to combine the two.
推薦答案
僅使用 substring()
怎么樣?
select replace(substring(option_field_2, 13, 999), ';', '')
或者,如果您不知道前綴有多長(zhǎng):
Or, if you don't know how long the prefix is:
select replace(stuff(option_field_2, 1, charindex(':', option_field_2) + 1, ''), ';', '')
這里是db<>fiddle.
Here is a db<>fiddle.
這篇關(guān)于兩個(gè)字符之間的變長(zhǎng)子串的文章就介紹到這了,希望我們推薦的答案對(duì)大家有所幫助,也希望大家多多支持html5模板網(wǎng)!
【網(wǎng)站聲明】本站部分內(nèi)容來(lái)源于互聯(lián)網(wǎng),旨在幫助大家更快的解決問(wèn)題,如果有圖片或者內(nèi)容侵犯了您的權(quán)益,請(qǐng)聯(lián)系我們刪除處理,感謝您的支持!