oracle 查询相关
select
-
登录oracle之后退格不显示 ^H:
vim .bash_profile stty erase ^H source .bash_profile
-
只查询前10行命令
select * from table_name where rownum<10;
-
小数前面的0不显示问题
select to_char('0.31','fm999999990.999999999') from dual;
含义:
其9代表:如果存在数字则显示数字,不存在则显示空格
其0代表:如果存在数字则显示数字,不存在则显示0,即占位符。
其FM代表:删除如果是因9带来的空格,则删除之
如果不想四舍五入可先用trunc函数
select to_char(trunc('3.16',1),'fm999999990.0') as sz from dual; ```
函数
-
nvl参数:
命令 用法 nvl(参数1,参数2)
nvl(参数1,参数2,参数3)参数1为null则返回参数2,否则返回参数1
参数1为null则返回参数3,否则返回参数2 -
Oracle的去重函数 distinct
-- 用作单例 select distinct name from A -- 用作多例(实际上是根据name和id两个字段来去重的) select distinct name, id from A -- COUNT统计 select count(*) from (select distinct xing, name from B) AS M; -- distinct必须放在开头
-
round() 求近似值函数
SELECT ROUND(column_name,2) FROM table_name;
-
sign() 返回数值的正负值
参数
- connect by 用于存在父子,祖孙,上下级等层级关系的数据表进行层级查询