文章详情

短信预约-IT技能 免费直播动态提醒

请输入下面的图形验证码

提交验证

短信预约提醒成功

SQL中concat和substr组合运用解析

2022-08-08 12:59

关注

concat和substr组合运用

背景

最近客户要我给一个脚本说查数据,说是要 截取sql表中某一个字段的前5个数值 进行查找。

刚开始我以为很简单就接了下来开始想,想了之后发现并没有这么简单(自己太菜了),就去问朋友(大数据开发)。

给了我 这两个函数(concat和substr)让我自己去玩 ,但是客户一直再催没办法只能找我们自己的开发写脚本。

Ten minutes later…

真的就10分钟,开发发来了脚本,果然就是用的这两个函数,还得是大佬。

脚本有放在最后一章进行分析

concat介绍

concat()可以理解为就是拼接函数,用于将多个字符串连接起来,形成一个单一的字符串

concat(id, name, work_date)
 这个函数会把三个字段的数值拼接到一个字段

更详细的页面学习:

链接:link

substr介绍

substr()此函数就相当于一个截取操作

substr(string ,pos,len)
string:指定字符串
pos:规定字符串从何处开始
len:要截取字符串的长度

更详情的学习请参考sql中的substr()函数用法

前言:

五一闲来无事多更新几篇关于sql语句的文章吧,sql中要是想截取某个字段值作为匹配条件怎么办呢,这里可以使用substr()函数了。下面请看例子吧。

substr()函数

substr()函数用于截取对应字段指定长度。

SUBSTR(string ,pos,len)
string:指定字符串
pos:规定字符串从何处开始,(这里的第一个位置是1而不是0)为正数时则从字段开始出开始,为负数则从结尾出开始。
len:要截取字符串的长度。(是从1开始计数而不是0)

示例:

现在我们举个例子,现在想通过时间字段得到每个小时15min/30min/45min/00min的数据,时间字段data_date(YYYY-MM-DD HH:mm)

select * from meter_table
where substr(data_date,15,2) in ('00','15','30','45')

最后SQL语句分析

最终阉割版的脚本展示

replace into student (select name,concat(substr(A.stuid,1,5),'0'),A.sex  from student A,score B WHERE substr(A.stuid,6,1)='1' and concat(substr(A.stuid,1,5),'0')=B.stuid);

replace 替换语句

concat(substr(A.stuid,1,5),‘0’)

截取(substr函数)表A(student表)中stuid字段的前1-5个数值,再与‘0’进行拼接成行的字段。

本来学号为665511,现在就会变成了665510

Student表中由于某种原因,stuid字段里面的数值最后一位变成了1,Score表中有以‘0’结尾的正确学号,这脚本的目的就是把Student表中的错误数据替换。

到此这篇关于SQL中concat和substr组合运用的文章就介绍到这了,更多相关SQL中concat和substr内容请搜索我们以前的文章或继续浏览下面的相关文章希望大家以后多多支持我们!

阅读原文内容投诉

免责声明:

① 本站未注明“稿件来源”的信息均来自网络整理。其文字、图片和音视频稿件的所属权归原作者所有。本站收集整理出于非商业性的教育和科研之目的,并不意味着本站赞同其观点或证实其内容的真实性。仅作为临时的测试数据,供内部测试之用。本站并未授权任何人以任何方式主动获取本站任何信息。

② 本站未注明“稿件来源”的临时测试数据将在测试完成后最终做删除处理。有问题或投稿请发送至: 邮箱/279061341@qq.com QQ/279061341

软考中级精品资料免费领

  • 历年真题答案解析
  • 备考技巧名师总结
  • 高频考点精准押题
  • 2024年上半年信息系统项目管理师第二批次真题及答案解析(完整版)

    难度     813人已做
    查看
  • 【考后总结】2024年5月26日信息系统项目管理师第2批次考情分析

    难度     354人已做
    查看
  • 【考后总结】2024年5月25日信息系统项目管理师第1批次考情分析

    难度     318人已做
    查看
  • 2024年上半年软考高项第一、二批次真题考点汇总(完整版)

    难度     435人已做
    查看
  • 2024年上半年系统架构设计师考试综合知识真题

    难度     224人已做
    查看

相关文章

发现更多好内容

猜你喜欢

AI推送时光机
位置:首页-资讯-数据库
咦!没有更多了?去看看其它编程学习网 内容吧
首页课程
资料下载
问答资讯