oracle怎么查首字母 oracle 查询包含字母

oracle保留首字母,其他字母用*表示

sqlserver。

创新互联公司-专业网站定制、快速模板网站建设、高性价比微山网站开发、企业建站全套包干低至880元,成熟完善的模板库,直接使用。一站式微山网站制作公司更省心,省钱,快速模板网站建设找我们,业务覆盖微山地区。费用合理售后完善,10年实体公司更值得信赖。

selectleft(name,1)+'**'fromtable或者selectsubstring(name,1,1)+'**'fromtable这个*不会自动按剩余数量拼接的,如果你想达到那个效果估计要写个函数了。

rpad:右侧填补字符,填补长度为NAME长度,使用'*'填充空位oracle,其他数据库不好用尝试使用substring代替substr,、len代替length。

oracle中怎么判断查询的列中是否包含字母?

select

case

when

regexp_like(字段名,'.([a-z]+|[A-Z])')

then

'包含字母'

else

'不包含字母'

end

from

表名字

正则表达式函数:regexp_like

关键的参数是第二个:'.([a-z]+|[A-Z])'其中.表示匹配任何单字符,换行符除外

[a-z]是小写字母|或[A-Z]大写字母。

编程注意事项:

1、程序不仅需要给计算机读

,

也要给程序员读。

程序设计风格的原则

,

代码应该清楚的和简单的

,

具有直截了当的逻辑

,

自然的表达式

,

通行的语言使用方式

,

有意义的名字和帮助作用和注释。

2、自定义类型名以大写字母开头,各单词之间以大写字母分隔,如

CallType

(即骆驼式命

名法)

变量名以小写字母开头,

各单词之间以大写字母

分隔

(变量活动范围前缀以下划线

分隔)

,如

m_pReleaseIn。函数名以大写字母开头,各单词之间以大写字母分隔(进程、进

程页及子函数前缀以下划

线分隔)

,如

Sub_ErrorDealing。

3、命名宏定义时,表示最大个数时定义为

XXX_MAX_NUM(如最大子节点个数可用

SNODE_MAX_NUM表示)

,表示最大取值时定义为

XXX_MAX(如

PT

E1的最大取值

可用

PT_E1_MAX表示)

。定义最小个数时定义为

XXX_MIN_NUM,定义最小取值时定义

XXX_MIN。

(以防止下标使用时难以分辨是否需要减

1)

如何修改oracle数据库查询的默认大小写状态

首先ORACLE不是把列名默认转换为大写状态,而是ORACLE中存储的就是大写状态,也就是说你不特别加引号来标明的话,ORACLE会默认为大写。所以要让ORACLE查询出来是小写,不需要任何设置,只需要创建表的时候就写成是小写,

SQL

create

table

aa("id"

number,

"Name"

varchar2(10))

;

表已创建。

SQL

select

*

from

aa

;

未选定行

SQL

insert

into

aa

values(1,'WANG')

;

已创建

1

行。

SQL

select

*

from

aa

;

id

Name

----------

----------

1

WANG

oracle常用命令大全

学习时整理的 Oracle 1、set linesize 100; 设置长度

2、set pagesize 30; 设置每页显示数目

3、em a.sql 打开记事本

4、@ a 执行文件a中的代码,可指定文件的路径 @d:a.txt

5、conn 用户名/密码 根据用户名和密码连接数据库 如果连接超级管理员(sys) 则应加上as sysdba;

6、show user; 显示当前连接的用户

7、select * from tab; 得到当前用户下的所有表

8、desc temp; 查看表结构

9、/ 继续执行上一个查询语句

clear scr; 清屏字符函数

10、select upper('coolszy') from dual; 将小写字母转换成大写,dual 为一虚表

11、select lower('KUKA') from dual; 将大写字母转换成小写

12、select initcap('kuka') from dual; 将首字母大写

13、select concat('Hello',' world') from dual; 连接字符串,但没有||好用select concat('Hello','world') from dual;

14、select substr('hello',1,3) from dual; 截取字符串

15、select length('hello') from dual; 求字符串长度

16、select replace('hello','l','x') from dual; 替换字符串

17、select substr('hello',-3,3) from dual; 截取后三位数值函数

18、select round(789.536) from dual; 四舍五入,舍去小数

19、select round(789.536,2) from dual; 保留两位小数

20、select round(789.536,-1) from dual; 对整数进行四舍五入

21、select trunc(789.536) from dual; 舍去小数,但不进位

22、select trunc(789.536,2) from dual;

23、select trunc(789.536,-2) from dual;

24、select mod(10,3) from dual; 返回10%3的结果日期函数

25、select sysdate from dual; 返回当前日期

26、select months_between(sysdate,'16-6月 -08') from dual; 返回之间的月数

27、select add_months(sysdate,4) from dual; 在日期上加上月数

28、select next_day(sysdate,'星期一') from dual; 求下一个星期一

29、select last_day(sysdate) from dual; 求本月的最后一天

转换函数

30、select to_char(sysdate,'yyyy') year,to_char(sysdate,'mm'),to_char(sysdate,'dd') from dual;

31、select to_char(sysdate,'yyyy-mm-dd') from dual;

32、select to_char(sysdate,'fmyyyy-mm-dd') from dual; 取消月 日 前面的0

33、select to_char('20394','99,999') from dual; 分割钱 9表示格式

34、select to_char('2034','L99,999') from dual; 加上钱币符号

35、select to_number('123')*to_number('2') from dual;

36、select to_date('1988-07-04','yyyy-mm-dd') from dual; 通用函数

37、select nvl(null,0) from dual; 如果为null,则用0代替

38、select decode(1,1,'内容是1',2,'内容是2',3,'内容是3') from dual; 类似于 switch...case...事务处理

39、commit; 提交事务

40、rollback; 回滚事务

41、select rownum from table; 在没一列前面显示行号

42、drop table 表名 cascade constraint

on delete casecade 当父表中的内容被删除后,子表中的内容也被删除43、desc表名 显示表的结构

44、create user [username] identified by [password] 创建新的用户

45、grant 权限1、权限2...to 用户 给创建用户权限

ex:grant create session to [username] 此时只能连接到数据库

grant connect,resource to [username] 此时权限能满足要求

46、alter user [username] identified by [password] 修改用户密码

47、alter user [username] password expired 下次登录时提示修改密码

48、alter user [username] account lock 锁住用户

49、alter user [username] account unlock 解锁锁用户

50、grant select,delete on scott.emp to [username] 把scott下emp表的两个权限给用户

51、revoke select ,delete on scott.emo from [username] 回收权限

Oracle单表的复杂查询

Oracle单表的复杂查询

select avg(sal) max(sal) deptnofrom empgroupby deptno;

select avg(sal) max(sal) deptnofrom empgroupby deptnohavingavg(sal) orderby deptno;

查询工资高于 或者是岗位为MANAGER的雇员 同时还要满足他们的姓名首字母为大写的J?

select *from empwhere (sal or job= manager )and enamelike J% ;

按照部门号升序而雇员的工资降序排列

select *from emporderby deptnoasc saldesc ;

select (sal+nvl(m ))* assum enamefrom emporderbysum;

求最高工资和最低工资

selectmax(sal) min(sal)from emp ;

查询最高工资员工的名字 工作岗位

select ename salfrom empwhere (selectmax(sal)from emp )=sal;

显示工资高于平均工资的员工信息

select *from empwhere sal(selectavg(sal)from emp);

group by 和 having子句

group by用于对查询的结果分组统计

having子句用于限制分组显示结果

如何显示每个部门的平均工资和最高工资

selectavg(sal) max(sal) deptnofrom empgroupby deptno;

显示每个部门的每种岗位的平均工资和最低工资?

selectavg(sal) max(sal) min(sal) deptno jobfrom empgroupby deptno job;

显示平均工资低于 的部门号和它的平均工资?

selectavg(sal) max(sal) deptnofrom empgroupby deptnohavingavg(sal) orderby deptno;

对数据分组的总结

分组函数只能出现在选择列表 having order by子句中(不能出现在where中)

如果在select语句中同时包含有group by having order by那么它们的顺序是group by having order by

在选择列中如果有列 表达式和分组函数 那么这些列和表达式必须有一个出现在group by子句中 否则就会出错

lishixinzhi/Article/program/Oracle/201311/18634


当前文章:oracle怎么查首字母 oracle 查询包含字母
文章来源:http://cdiso.cn/article/hpssgg.html

其他资讯