Foxtable(狐表)用户栏目专家坐堂 → SQL中 SUBSTRING 的问题


  共有2488人关注过本帖树形打印复制链接

主题:SQL中 SUBSTRING 的问题

美女呀,离线,留言给我吧!
Springamy
  1楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:一尾狐 帖子:427 积分:2969 威望:0 精华:0 注册:2017/4/6 15:51:00
SQL中 SUBSTRING 的问题  发帖心情 Post By:2018/8/1 11:42:00 [只看该作者]

case when patindex('%B公司%',b.cpx)>0  then SubString(b.gysddhm,0,13)   Else '456' end)

需求:  需要截取B公司的b.gysddhm中的前13个字符,但是在这里报错


 回到顶部
帅哥哟,离线,有人找我吗?
有点甜
  2楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:版主 帖子:85326 积分:427815 威望:0 精华:5 注册:2012/10/18 22:13:00
  发帖心情 Post By:2018/8/1 11:46:00 [只看该作者]

substring是从1开始的,不是0。

 回到顶部
美女呀,离线,留言给我吧!
Springamy
  3楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:一尾狐 帖子:427 积分:2969 威望:0 精华:0 注册:2017/4/6 15:51:00
  发帖心情 Post By:2018/8/1 14:32:00 [只看该作者]

left join  CGHT As c  ON a.xmdhout=(case when patindex('%B公司%',c.cpx)>0  then SubString(c.gysddhm,1,13) else c.gysddhm end   )

 xmdhout 和gysddhm (gysddhm 有的数据不用截取,有的要截取前面13位才能相等,这么写这么没有效果?)


 回到顶部
帅哥哟,离线,有人找我吗?
有点甜
  4楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:版主 帖子:85326 积分:427815 威望:0 精华:5 注册:2012/10/18 22:13:00
  发帖心情 Post By:2018/8/1 14:37:00 [只看该作者]

建议你先生成对应的表格,再连接两个表格吧。

 回到顶部