ORACLE LPAD()函数

LPAD(原始字符,填充后长度,填充字符)

参考这篇帖子
填充字符不写默认填充空格


SQL

select Lpad('ABCDEFG',4) from dual

结果
会把超长的字符删除


SQL

select Lpad('ABCDEFG',10,'-') from dual

结果
如果长度不够会在左边填充字符


SQL

select Lpad(level, 2, 0) as month from dual connect by level <13

结果
如月份填充0


Lpad 不是 Ipad

  这几天同事让我帮他写几张视图,有一个需求是要按月份分组,我很垃圾不知道怎么补全12个月份,于是上网查了一下,结果查出下面这个帖子。
oracle按月分组查询


  这个帖子补全月份的方法是从虚拟表里面查询出12个月份,然后与源数据进行关联,就可以显示出没有数据的月份啦。就在这个地方注意到这个 Lpad() 函数。
从上面帖子中截过来的图
  ???这不是Ipad吗?oracle里面还有叫Ipad的方法?
  于是我照着敲出了下面这行sql。。。
我自己敲的
  虽然颜色不对,但我还是决定运行看看。
报错信息
结果发现是Lpad(我猜是left padding)
我可真蠢!

select Lpad(level, 2, 0) as month from dual connect by level <13
### 回答1: Oracle LPAD函数用于在字符串的左侧填充指定的字符,以达到指定长度。其语法如下: ``` LPAD(string, length [, pad_string]) ``` 其中,`string`是要填充的字符串,`length`是填充后字符串的总长度,`pad_string`是可选参数,用于指定填充的字符,默认为一个空格。 例如,使用LPAD函数将字符串'123'左侧填充0,使其总长度为5: ``` SELECT LPAD('123', 5, '0') FROM dual; ``` 输出结果为'00123'。 ### 回答2: Oracle的LPAD函数用于返回一个左对齐的字符串,该字符串由原始字符串填充到指定长度的空格或指定字符。 LPAD函数的语法如下: LPAD(原始字符串, 长度, [填充字符]) 其中,原始字符串是要进行填充的字符串,长度是指定要填充到的长度,填充字符是可选的,默认为一个空格。 例如,假设有一个表格,其中有一个名为name的字段,存储了员工的姓名。现在我们想要将姓名左对齐,并填充到长度为10。我们可以使用下面的SQL语句来实现: SELECT LPAD(name, 10) FROM employees; 上述SQL语句将会返回一个结果集,其中包含了将员工姓名左对齐并填充到长度为10的字符串。 此外,我们还可以指定要进行填充的字符,例如,如果我们想要用字符"*"来填充字符串,我们可以使用如下SQL语句: SELECT LPAD(name, 10, '*') FROM employees; 上述SQL语句将返回将员工姓名左对齐并填充到长度为10的字符串,使用"*"来进行填充。 总结来说,Oracle的LPAD函数是用于将字符串左对齐并填充到指定长度的函数,可以使用默认的空格进行填充,也可以指定填充字符。 ### 回答3: Oracle中的LPAD()函数是用于在字符串的左侧填充指定字符,使得字符串达到指定的长度。 LPAD()函数接受三个参数:源字符串、目标长度和填充字符。源字符串是要进行填充的字符串,目标长度是要达到的字符串长度,填充字符是用于填充的字符,默认为一个空格。 如果源字符串的长度大于或等于目标长度,则函数不会进行任何操作,直接返回源字符串。 如果源字符串的长度小于目标长度,则函数会在源字符串的左侧填充足够数量的填充字符,直到达到目标长度为止。 下面是LPAD()函数的使用示例: SELECT LPAD('Hello', 10) FROM dual; 该语句将返回一个字符串" Hello",长度为10。 SELECT LPAD('World', 5, '*') FROM dual; 该语句将返回一个字符串"World",长度为5,因为源字符串本身的长度已经大于目标长度。 LPAD()函数在许多场景中都非常有用,比如当需要以固定长度的字符串格式输出时,可以使用LPAD()函数进行填充。另外,LPAD()函数还可以与其他字符串函数一起使用,以达到更复杂的字符串操作。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值