SQL SERVER 2005,如何截取字符串中第一个分号之前的字符?截取长度未知

如:字符串str=‘abcd, efg, hij; opq, rst, uvw; xyz’

想要截取第一个‘;’(分号)之前的字符串,而截取的长度不确定,会因为字符串内容而变化。SUBSTRING只能设定初始截取位置,实现不了,新手求大神解答!
另外SUBSTRING(STR,POS,LENGTH)中,长度length不确定怎么写?如果写50,到时候会提示长度不够终止语句,想表达的是提取POS起始位置之后的字符串,长度可能二十几可能三十几不确定。

长度不确定用text啊,charindex查询分号位置,第一个分号之前的长度,就代表从0开始,而截取的长度length就是查询的分号的位置,明白了不
温馨提示:答案为网友推荐,仅供参考
第1个回答  2012-10-16
String aa = "abcdefg;hijklmn;opkrst";
System.out.println(aa.substring(0,aa.indexOf(";")));
相似回答