当前位置: 代码迷 >> Oracle开发 >> 这句SQL该如何写
  详细解决方案

这句SQL该如何写

热度:20   发布时间:2016-04-24 07:42:54.0
这句SQL该怎么写?
在oracle里比如有一张表tab里的一个字段col数据是这样的
1234,fdf
123,abc
我想查询出“,”之前的数据,查询出的结果集就是这样的:
1234
123
想问下SQL语句该怎么写?

------解决方案--------------------
select substr('abc,124',0,instr('abc,124',',')-1) from dual;

------解决方案--------------------
上面有点错误
应该是
SQL code
select decode(instr(col,',',1,1),0,col,substr(col,1,instr(col,',',1,1)-1))from tab
------解决方案--------------------
SQL code
SQL> select substr('123,456',0,instr('123,456',',')-1) from dual; SUBSTR('123,456',0,INSTR('123,------------------------------123
------解决方案--------------------
探讨
上面有点错误
应该是

SQL code

select decode(instr(col,',',1,1),0,col,substr(col,1,instr(col,',',1,1)-1))
from tab

------解决方案--------------------
SQL code
select substr(col ,1,instr(col,',')-1) from tab;
  相关解决方案