文章详情

短信预约信息系统项目管理师 报名、考试、查分时间动态提醒

请输入下面的图形验证码

提交验证

短信预约提醒成功

Oracle入门学习二

2014-07-13 16:19

关注

Oracle入门学习二

上一篇:Oracle入门学习一

学习视频:https://www.bilibili.com/video/BV1tJ411r7EC?p=15

算术运算符:+ - * /

逻辑运算符:and or not

比较运算符:“=”、“<”、“>”、“<=”、“>=”、“<>”、“!=”。注意“=”是等于的意思而非赋值,最后两种都表示不等于。

查找列:

-- 给列起别名,如果列名有空格,则要用双引号包住
select name 名字,salary*15 "年    薪" from staff where name="张三";
--列的值如果要连接起来,使用||
select name||"-"||salary*15 "员工年薪" from staff where name="张三";
--常量列
select salary,"李子维" "姓名" from staff;
View Code

null运算:运算的时候如果有空值参与永远返回空,为避免此情况可以借助nvl(param1,param2)函数,param1为空则返回值为param2,否则param1。

select salary+nvl(bonus,0) all_salary from staff;

排重:无论多列还是单列,只需要在列的最前面加“distinct”关键字就可以实现排重,多列排重则是看整个组合是否重复,而非其中一列是否重复。

select distinct salary,name from staff;

where:条件筛选,可以加极限条件例如1=1永远为真,1!=1永远为假。字符串对比是区分大小写的。

-- 判空要用 is null
select salary,name from staff where salary>80000 or bonus is null;
-- 永真条件
select salary,name from staff where 1=1;
-- 永假条件
select salary,name from staff where 1!=1;
View Code
-- 字符串比较严格区分大小写,且用单引号括住
select salary,name from staff where name="Popo";
View Code

模糊查询之Like:通配符“_”表示任意一个字符,通配符“%”任意长度的字符串,使用“like”进行模糊查询经常用到这两个通配符。

select salary,name from staff where name like "张%";
select salary,name from staff where name like "张_";
select salary,name from staff where name like "%o_";

模糊查询之between...and...:等价于 “ 值a >= 值b  and 值a <= 值c”,切记包含等于。如果需要不在这个范围内的数据,只需在between前加个not关键字。

select salary,name from staff where salary between 80000 and 90000;
select salary,name from staff where salary>=80000 and salary<=90000;
select salary,name from staff where not salary between 80000 and 90000;

模糊查询之in:表示在某个范围内,但这个范围内的值都可以精确的表示,in(4,5,6)表示字段在4或5或6都可以。不在这个范围则在not in(......)。

select salary,name from staff where salary in (40000,80000);
select salary,name from staff where salary not in (40000,80000);

判null:用“is null”而非=null,而不空使用“is not null”。

-- 判断用is null,非空用 is not null
select salary,name from staff where bonus is null;
select salary,name from staff where bonus is not null;

order by 排序:排序语句永远放末尾,默认是 asc 升序(小->大),desc为降序(大->小),多列排序也只需写一次order by,例如“order by 列1 desc,order by 列2 asc,列3 desc”。

select salary,name from staff order by salary;
select salary,name from staff order by salary asc;
select salary,name from staff order by salary desc;
-- 不写降序升序,默认升序
select salary,name from staff order by salary ,name ;
select salary,name from staff order by salary desc,name desc;

 

阅读原文内容投诉

免责声明:

① 本站未注明“稿件来源”的信息均来自网络整理。其文字、图片和音视频稿件的所属权归原作者所有。本站收集整理出于非商业性的教育和科研之目的,并不意味着本站赞同其观点或证实其内容的真实性。仅作为临时的测试数据,供内部测试之用。本站并未授权任何人以任何方式主动获取本站任何信息。

② 本站未注明“稿件来源”的临时测试数据将在测试完成后最终做删除处理。有问题或投稿请发送至: 邮箱/279061341@qq.com QQ/279061341

软考中级精品资料免费领

  • 历年真题答案解析
  • 备考技巧名师总结
  • 高频考点精准押题
  • 2024年上半年信息系统项目管理师第二批次真题及答案解析(完整版)

    难度     813人已做
    查看
  • 【考后总结】2024年5月26日信息系统项目管理师第2批次考情分析

    难度     354人已做
    查看
  • 【考后总结】2024年5月25日信息系统项目管理师第1批次考情分析

    难度     318人已做
    查看
  • 2024年上半年软考高项第一、二批次真题考点汇总(完整版)

    难度     435人已做
    查看
  • 2024年上半年系统架构设计师考试综合知识真题

    难度     224人已做
    查看

相关文章

发现更多好内容

猜你喜欢

AI推送时光机
位置:首页-资讯-数据库
咦!没有更多了?去看看其它编程学习网 内容吧
首页课程
资料下载
问答资讯