oracle基础(第二节)
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了oracle基础(第二节)相关的知识,希望对你有一定的参考价值。
参考技术A进行筛选的基本运算符号:
--查询月薪高于2000的员工的姓名和其月薪
--查询员工SMITH的员工信息
--关键字,表名,列名:大小写是不敏感(随意写)
--数据:大小写是敏感(不能随意写)
--查询不在20号部门工作的员工信息
--查询在20号部门工作并且月薪高于2000的员工信息
--查询职位是MANAGER或者月薪不低于3000的员工信息
--查询在10号部门工作月薪低于2000并且职位不是CLERK的员工信息
--查询在10号部门工作或(20号部门工作并且月薪不低于1500)的员工信息
--and的优先级要高于or 如果两者混合使用,需要注意优先级的问题
--加括号解决优先级问题
--SQL注入:利用了and的优先级高于or完成无密码进行登录
--SQL片段:通过在密码框中输入下方的SQL片段,更改了原有SQL语句的逻辑 \' or lname = \'admin --or前的逻辑:账号随意,密码为空 (登录失败) --or后的逻辑:用户名是admin的账号 (调取了admin的信息)
--1.查询10号部门职位是MANAGER的员工信息
--2.查询月薪低于2000或月薪高于3000的员工信息
--3.查询员工编号是7902的员工的所有下属的员工信息
--4.查询职位是CLERK或SALESMAN,并且月薪不低于1000的员工信息
--5.查询月收入不低于2500的员工信息
--6.查询30号部门年收入低于10000的员工信息
--7.查询员工SCOTT的月薪,奖金和月收入
--8.查询在1982年之前入职的员工信息(选做)
--相当于 >= A and <= B
--查询月薪在1000-2000区间的员工信息
--82年入职的员工
--like \'特定字符\'
-- 特定字符:由转义字符和搜索文本组成
-- 转义字符: %: 0-n个字符(任意长度的任意字符)
-- : 1个字符(1个长度的任意字符)
-- 比如 姓李 特定字符的写法 \'李%\'
-- 第二个字符是哈 特定字符的写法 \' 哈%\'
--查询员工名字首字母是S的员工
--查询名字中倒数第2个字符是T的员工
--查询名字中包含字母T的员工
--查询名字中包含两个字母T的员工
--查询有两个连续的T
--查询名字中有%字符的员工
--声明标识字符
--相当于 = A or = B or = C...
--查询在10号部门或20号部门工作的员工
--查询在10号部门工作或月薪高于1200的员工
-- = null 无法筛选任何数据
-- is null 筛选null值
-- not between A and B 不在A与B区间内
-- not like \'%A%\' 名字里面没有A
-- not in(A,B,C) 不是A,B,C其中之一
-- is not null 不为null
--查询月薪不在1000-2000区间内并且名字中不包含字母T的员工信息
--order by 列名 或 列别名 或 表达式 或 列序号
--ASC 升序 由小到大
--DESC 降序 由大到小
--不写 默认是升序
--## 书写顺序:select...from...where...order by...
--## 执行顺序:from...where...select...order by...
--查询所有员工的信息,按照月薪的升序排序
--再按照月薪的降序排序
--利用表达式排序
--利用列别名进行排序
--利用列序号进行排序(第4列)
--排序的原则:
--1.数值按照数值的大小
--2.文本按照字典顺序
--3.日期按照未来的大
--#####order by 可以修饰多个列
-- ## order by A, B 先A的升序排序,如果A相同,再按B的升序排序
-- ## order by A desc, B desc 先A的降序排序,如果A相同,再按B的降序排序
--查询月薪高于1000的员工,按照部门的升序排序,再按照入职日期降序排序
--推荐在order by中使用列名或列别名
--1.查询名字中包含字母T,并且月薪在1500-3000之间的员工姓名和月薪
--2.查询公司的BOSS信息(mgr值为null的人)
--3.查询员工姓名,月薪,奖金,年收入,按照年收入降序进行排序显示
--4.查询职位中包含MAN并且有奖金收入(不是null不是0)的员工信息
--5.查询在在1981年期间入职的员工信息,并按照月薪降序排序
--6.查询员工信息,并按照职位升序,部门升序进行排序显示
--7.查询不在10号或20号部门工作,月薪低于1500的员工信息
--8.查询所有的职位名称,去掉重复后按照名称的升序排序显示
--9.查询员工SCOTT和ADAMS的员工信息
--10.查询年收入高于45000的员工信息,并按照年收入降序排序显示
centos基础命令 第二节
感谢老师传授,谢谢老师!仅供学习用!
=============================
centos基础命令
------------------------------
cp 复制
cp 【选项】 源文件 目的地
-p 保留源文件属性
-r 复制目录
mv (1)移动 (2)改名
mv 源文件 目的地
echo
> 重定向
>> 追加重定向
==========================
gedit
nano
vi --> vim
命令模式
选中:v
复制:y yy复制一行 ”n“yy复制n行
粘贴:p
删除:d dd删除一行 ”n“dd删除n行
跳转:gg跳到文首 G跳到文末 ”n“G 调到第n行
撤销:u
反撤销:ctrl+r
/搜索
插入模式
退出模式
保存退出: :wq :x
不保存退出: :q!
保存: :w
:set nu 显示行号
:set nonu
:s/old/new 光标所在行匹配到的第一个字符串做替换
:s/old/new/g 光标所在行匹配到的字符串全部替换
:%s/old/new/g 全文替换
:n,ms/old/new/g 从第n行到第m行匹配到的字符串全部替换
:nohl 取消高亮
/etc/vimrc 对vim编辑器做个性化设置
=====================================
用户和组
/etc/passwd
用户名:密码占位符:UID:GID:说明信息:用户家目录:登录shell
/etc/shadow
用户名:密码:最近一次修改密码的时间:密码的最短有效期限:密码的最长有效期限:密码过期前多少天提醒
/etc/login.defs
/etc/group
/etc/gshadow
管理员:0
系统用户:201-999
普通用户:1000-60000
==========================================================
======================
相关问题及解决方法:
1:如果想把文档中出现的全部"abc"替换成"def"怎么做?又如何只替换每行中出现的第一个"abc"呢?
Ans1: esc:%s/abc/def/g
Ans2: esc:%s/abc/def
2:当搜索某个关键词时,光标所定位的关键词所在的行是如何决定的?也就是说,光标是定位到最顶端出现的关键词的那行还是最底端关键词出现的那行,还是另外的情况?如果想从当前关键词移动到下一个关键词怎么操作?移动到上一个关键词又怎么操作?
Ans1: “?word && /word”搜索到全文的关键词,?默认向上,/默认向下
Ans2: n向下移动,N向上移动
3:在一般模式下如何快速的把光标快速的向右或向左移动10个字符?
Ans:10l向右 10h向左
4:vim + filename 表示什么含义,vim +10 filename 将会发生什么?
Ans1:如果文件已存在,则表示进入编辑,如不存在则新建。
Ans2:如果存在10文件则进入编辑,不存在则新建10文件
5:用vim打开一个文档后,我想让光标跳到第20行,怎么做?跳到最后一行怎么做?
Ans1:gg—19j 或者 G--20G 或者gg--20gg
Ans2: G
6:vim 打开文档后,默认是不显示行号的,如何做让它显示行号?
Ans1:esc:set nu
7:vim打开文档后,我想把20-50行中的第一个'abc' 替换为 'efg' 怎么操作?如果是想替换所有呢?
Ans1:20,50s/abc/def/
Ans2:%s/abc/def/g
8:vim打开文档后,如何快速删除前100行?
Ans1:gg—100dd
9:vim打开文档后,如何复制一行,并粘贴到第20行的下面?
Ans1:yy—20G---p(小写)
Ans2:yy—19G—P(大写) 不推荐
答案不唯一,实践出真知
---------------------
有错误请指正!
本文出自 “10882976” 博客,转载请与作者联系!
以上是关于oracle基础(第二节)的主要内容,如果未能解决你的问题,请参考以下文章