码农知识堂 - 1000bd
  •   Python
  •   PHP
  •   JS/TS
  •   JAVA
  •   C/C++
  •   C#
  •   GO
  •   Kotlin
  •   Swift
  • 数据库PostgreSQL PG 字符串拼接,大小写转换,substring


    文章目录

    • 前言
    • 一、多个字符串如何连接,拼接?
      • 1. 将2个字符串hello和word拼接在一起
      • 2. 将3个字符串hello,空格和word拼接在一起
      • 3. 将字符串hello和数字123456拼接在一起
    • 二、字符串大小写转换
      • 1. 将Hello World,转换成小写
      • 2. 将Hello World,转换成大写
    • 三、删除字符串两边的空格
    • 四、查找字符位置
      • 1. 查找@在字符串hello@163.com中的位置
      • 2. 查找b在字符串hello@163.com中的位置
    • 五、查找子字符串
      • 方法1. start=1,count=5
      • 方法2. start=0,count=6
    • 六、综合实例
    • 总结

    前言

    PostgreSQL数据库简称pg数据库。
    本文主要介绍使用pg数据库时,字符串的一些常用操作。
    例如:多个字符串如何连接在一起,字符串如何大小写转换,删除字符串两边的空格,查找字符位置,查找子字符串等。


    一、多个字符串如何连接,拼接?

    pg的字符串连接使用 ||,注意不是+

    1. 将2个字符串hello和word拼接在一起

    SELECT 'hello' || 'world';
    --结果: helloworld
    
    • 1
    • 2

    2. 将3个字符串hello,空格和word拼接在一起

    SELECT 'hello' || ' ' || 'world';
    --结果:hello world
    
    • 1
    • 2

    3. 将字符串hello和数字123456拼接在一起

    SELECT 'hello' || 123456;
    --结果:hello123456
    
    • 1
    • 2

    二、字符串大小写转换

    1. 将Hello World,转换成小写

    SELECT lower('Hello World');
    --结果:hello world
    
    • 1
    • 2

    2. 将Hello World,转换成大写

    SELECT upper('Hello World');
    --结果:HELLO WORLD
    
    • 1
    • 2

    三、删除字符串两边的空格

    SELECT trim(' hello world ');
    --结果:hello world
    
    • 1
    • 2

    四、查找字符位置

    注:position函数返回值是从1开始的,不是从0开始的下标值。如果返回0表示没找到字符。

    1. 查找@在字符串hello@163.com中的位置

    SELECT position('@' IN 'hello@163.com');
    --结果:6
    
    • 1
    • 2

    2. 查找b在字符串hello@163.com中的位置

    注: 因为b不在字符串hello@163.com中,返回0,表示没找到字符b。

    SELECT position('b' IN 'hello@163.com');
    --结果:0
    
    • 1
    • 2

    五、查找子字符串

    函数:substring(‘hello@163.com’, start, count);
    参数1:字符串,参数2:起始位置,参数3:count
    注意:start的位置, count值的区别

    查询子字符串hello

    方法1. start=1,count=5

    SELECT substring('hello@163.com',1,5);
    --结果:hello
    
    • 1
    • 2

    方法2. start=0,count=6

    SELECT substring('hello@163.com',0,6);
    --结果:hello
    
    • 1
    • 2

    六、综合实例

    功能描述:将Hello@163.com转成小写,并将域名由163.com换成126.com
    Hello@163.com --> hello@126.com

    SELECT lower(substring('Hello@163.com',0, position('@' IN 'Hello@163.com')) || '@126.com');
    --结果:hello@126.com
    
    
    SELECT lower(substring('Hello@163.com',1, position('@' IN 'Hello@163.com') - 1) || '@126.com');
    --结果:hello@126.com
    
    • 1
    • 2
    • 3
    • 4
    • 5
    • 6

    总结

    以上就是今天要讲的内容,本文仅仅简单介绍了pg数据库中字符串的一些常用函数的使用,而pg还提供了大量函数和方法,具体见pg官网https://www.postgresql.org/docs/current/functions-string.html。

    先自我介绍一下,小编13年上师交大毕业,曾经在小公司待过,去过华为OPPO等大厂,18年进入阿里,直到现在。深知大多数初中级java工程师,想要升技能,往往是需要自己摸索成长或是报班学习,但对于培训机构动则近万元的学费,着实压力不小。自己不成体系的自学效率很低又漫长,而且容易碰到天花板技术停止不前。因此我收集了一份《java开发全套学习资料》送给大家,初衷也很简单,就是希望帮助到想自学又不知道该从何学起的朋友,同时减轻大家的负担。添加下方名片,即可获取全套学习资料哦

  • 相关阅读:
    Python调用C++(实战篇)
    【代码源每日一题Div1】路径计数2「动态规划 记忆化搜索」
    共用一个一维空间的双向栈
    Xmake v2.8.5 发布,支持链接排序和单元测试
    数据结构之队列
    基于ssm人事管理系统获取(java毕业设计)
    Unity进阶第二章-消息框架(实现角色吃金币功能)
    TikTok创意大赛:如何制作病毒性视频
    C# CS0120解决办法
    qemu笔记-代码导读
  • 原文地址:https://blog.csdn.net/m0_67401761/article/details/126081336
  • 最新文章
  • 攻防演习之三天拿下官网站群
    数据安全治理学习——前期安全规划和安全管理体系建设
    企业安全 | 企业内一次钓鱼演练准备过程
    内网渗透测试 | Kerberos协议及其部分攻击手法
    0day的产生 | 不懂代码的"代码审计"
    安装scrcpy-client模块av模块异常,环境问题解决方案
    leetcode hot100【LeetCode 279. 完全平方数】java实现
    OpenWrt下安装Mosquitto
    AnatoMask论文汇总
    【AI日记】24.11.01 LangChain、openai api和github copilot
  • 热门文章
  • 十款代码表白小特效 一个比一个浪漫 赶紧收藏起来吧!!!
    奉劝各位学弟学妹们,该打造你的技术影响力了!
    五年了,我在 CSDN 的两个一百万。
    Java俄罗斯方块,老程序员花了一个周末,连接中学年代!
    面试官都震惊,你这网络基础可以啊!
    你真的会用百度吗?我不信 — 那些不为人知的搜索引擎语法
    心情不好的时候,用 Python 画棵樱花树送给自己吧
    通宵一晚做出来的一款类似CS的第一人称射击游戏Demo!原来做游戏也不是很难,连憨憨学妹都学会了!
    13 万字 C 语言从入门到精通保姆级教程2021 年版
    10行代码集2000张美女图,Python爬虫120例,再上征途
Copyright © 2022 侵权请联系2656653265@qq.com    京ICP备2022015340号-1
正则表达式工具 cron表达式工具 密码生成工具

京公网安备 11010502049817号