最近面试有用到这两个,就是想不起来怎么写,现在复习一下
1、
语法是这样,LPAD(str,n[,str2]) LPAD(str,n[,str2])
当n<str.length,且没有str2参数的时候LPAD()和RPAD()都会截掉多余的字符。
并且都是从左向右取前n个字符。例如:
SELECT LPAD('CONGRANTULATIONS',5) FROM DUAL;
SELECT RPAD('CONGRANTULATIONS',5) FROM DUAL;
都会返回同一个字符串'CONGR'。
如果有str2且n<str.length时候和上面结果一样。
如果有str2且n>str.length的时候,
SELECT LPAD('CONGRANTULATIONS',20,'*') FROM DUAL; 结果为'****CONGRANTULATIONS'
SELECT RPAD('CONGRANTULATIONS',20,'*') FROM DUAL; 结果为'CONGRANTULATIONS****'
2、
表:insert into test values('admin');
insert into test values('ADMIN');
insert into test values('Admin');
在程序中实现精确查询:select * from test where name='admin'; 查询结果:admin
在程序中实现大写查询:select * from test where name=upper('name'); 查询结果:ADMIN
在程序中实现大小写忽略查训:select * from test where upper(name)=upper('admin');
查询结果:admin
ADMIN
Admin