当前位置: 首页 > news >正文

Oracle-day1:scott用户、查询、取整、截取、模糊查询、别名——23/8/23

整理一下第一天软件测试培训的知识点

1、scott用户

-- 以system管理员登录锁定scott用户
alter user scott account lock;-- 以system管理员登录解锁scott用户
alter user scott account unlock;-- 以system管理员用户设置scott用户密码
alter user scott identfied by tiger;

前提条件:

使用system管理员账号登录了,这时解锁了scott普通用户

在scott用户下,有emp员工信息表

-- 前提:在scott普通账号下,有一个emp表
-- emp 员工信息表-- empno 员工编号 number数字类型--ename 员工姓名 varchar2字符串类型--job 工作岗位 varchar2字符串类型--mgr 上级领导 number数字类型--hiredate 入职日期 date时间类型--sal 工资,number类型--comm 奖金,number类型--deptno 部门编号 number

后面的内容都基于scott的emp表进行操作

2、DQL操作 -- 查询

       DQL操作:对已有的表进行数据的查询和筛选
       select -- 选择、查询
       select * from 表名; scott用户可以省略
       *:通配符,表示所有列和列名同时存在时,应写为:表名.*

2.1、select 查询语句

-- 1、查询全部数据
-- 此时在管理员账号,查询scott账号下的emp表
select * from scott.emp;
-- 如果当前是scott,可以省略scott
-- select * from emp;-- 2、查询指定列的数据
-- select 列1,列2 from 表;
select empno,ename from scott.emp;-- 3、查询满足条件的值
-- 查询工资>3000的人
select empno,ename from scott.emp where sal >= 3000;select emp.*,sal from scott.emp where sal >= 3000;

2.2、对数字列进行计算

-- 4、对数字列进行运算
/*+-*/% -- 取余
*/
select emp.*,sal+200,sal-50,sal*1.3,sal/1.2 from scott.emp;
-- emp.*是查询到了emp表的所有列,然后后面就可以拼接其他列,一共查询到12列
-- 对列进行运算,会产生一个新的列
-- 每一列都是独立的!都是独立的重新从原有基础上进行运算,而不是从前一列再运算

2.3、向上ceil/下floor取整

/*取整:1、ceil() 向上取整2、floor() 向下取整
*/
-- 当小数不为零,ceil向上(往大的数走)取整
select emp.*,ceil(sal+200.5) from scott.emp;-- 当小数不为0,floor往下(往小的数走)取整
select emp.*,floor(sal+200.2) from scott.emp;-- 如果小数部分为0,ceil和floor直接取整数部分-- celi和floor并不是四舍五入,如果是-4.1,同时使用celi和floor
-- ceil(-4.1)取到的值是-4(向上取整,往大了取)
-- floor(-4.1)取到的值则是-5(向下取整,往小的取)

2.4、时间date

/*时间:date*/
-- sysdate 系统时间,返回值是 日期
-- current_date 当前时间,返回值是 日期
select sysdate,current_date from dual;

2.5、截取日期

-- 2、截取sal表中的日期:hiredate
/*a的值为时间列,n的值可以有以下:1、mm - 返回当月第一天2、yy - 返回当年第一天3、dd - 返回当前年月日4、yyyy - 返回当年第一天5、d - (星期天)返回当前星期的第一天6、hh - 当前时间7、mi - 没有秒的精准度
*/
select trunc(hiredate,'dd') from scott.emp;    
select trunc(hiredate,'yy') from scott.emp;

2.6、四舍五入

/*四舍五入、截取1、round(a,n) 四舍五入,n表示小数位,n省略则四舍五入到整数部分2、trunc() 用于截取时间和数字的函数3、trunc(a,n) 用于截取时间和数字的函数,n表示小数的位数,n省略表示截取到整数部分
*/
select * from scott.emp;
-- 1、运算 sal工资,乘1.2然后四舍五入
select round(sal * 1.2,2) from scott.emp;

2.7 列别名

/*取别名:1、给列取别名(列可以是已有的列,也可以是运算生成的列) 在低版本语法中需要加上asselect age 别名,name 别名注意:1、as可以省略2、列名不能重复3、别名建议不重复,别名可以用双引号进行包裹4、别名不要使用关键字       
*/
select * from scott.emp;
select ename "名字" from scott.emp; -- 给emp的ename取别名

2.8 表别名

/*对表取别名表取别名后,出现表名时候必须要使用别名,否则报错别名不能重复,表别名可以使用双引号
*/
select * from scott.emp a; -- 这是给表取了个别名a
select * from scott.emp "a+1"; -- 这种别名可以用双引号包括-- 给表的列取别名
select emp.*,sal/1.2 sal1,trunc(sal/1.2) sal2 from scott.emp;
-- 此时,如果给表取一个别名,这个时候在列的部分使用 emp就不对了
select e.*,sal/1.2 sal1,trunc(sal/1.2) sal2 from scott.emp e;
-- 这个时候emp就应该换成别名来代替了,如果不用别名,提示标识符错误
-- 例如这样
select e.ename from scott.emp e;

2.9 where查询

/*带where条件的查询:-- 可带有 > < = <= >=  (!+ <>)不等于-- 比较运算符两边的数据类型需要一致
*/
-- 精准查询
select * from scott.emp where deptno = 10; -- deptno 部门号
-- 数字类型是可以加上 单引号的
select * from scott.emp where deptno = '10';-- 范围筛选:> < >= <= 
select * from scott.emp where sal < '1000';

2.10 模糊查询

-- 模糊查询
-- -1、以 A开头的: A%
-- -2、以A结尾的:%A
-- -3、包含A:%A%
-- -4、
-- 语法:查询 where 条件列 like '模糊条件'
-- 找出以A开头的
select * from scott.emp where ename like 'A%';-- 找出以A结尾的
select * from scott.emp where ename like '%A';-- 找出包含A的
select * from scott.emp where ename like '%A%';

2.11 用函数来模糊查询

-- 在数据量大的情况下,link的弊端会体现出来
/*这个时候,就可以使用到函数substr()substr(str,begin,[num])在str中从begin位置开始连续截取num数量的字符可以正向和反向截取正向从1开始,反向从-1开始substr(str,begin)在str中从begin位置开始截取str字符串的末尾,如果没有就返回空值字符串的最后一位正向数是字符串的长度 反向数是-11、以A开头:substr(字符串,开始的位置,截取的长度) = 'Asubstr(字符串,1,1) = 'A'2、以A结尾substr('字符串',-1,1) = 'A'substr(字符串,-1) = 'A' 从末尾结尾时,后面的1可以省略
*/
-- 语句:查询以A开头
select * from scott.emp where substr(ename,1,1) = 'A';-- 语句:查询以A结尾
select * from scott.emp where substr(ename,-1,1) = 'A';
select * from scott.emp where substr(ename,-1) = 'A';/*也可以用字符串的长度函数来操作substr(字符串,-length(字符串),1) = 'A'substr(字符串,length(字符串),1) = 'A'substr(字符串,length(字符串)) = 'A'
*/
-- 1、以A开头
select * from scott.emp where substr(ename,-length(ename),1) = 'A';-- 2、以A结尾
select * from scott.emp where substr(ename,length(ename),1) = 'A';
select * from scott.emp where substr(ename,-length(ename)) = 'A';-- 如果在这里给列取了别名,那么在 查询条件中使用列别名,就会出错,因为
-- 别名是在查询结束以后才会产生,在查询期间是无效的--3、查询员工姓名第三位是A的
select * from scott.emp where ename like '__A%';
select ename,substr(ename,3,1) from scott.emp where substr(ename,3,1) = 'A';-- 4、查询第三位是A第五位是E的记录
select *  from scott.emp where ename like '__A_E%';select ename,substr(ename,3,1),substr(ename,5,1) from scott.emp 
where 
substr(ename,3,1) = 'A'
and
substr(ename,5,1) = 'E';

2.12 逻辑运算符

/*逻辑运算符:and:两个条件同时满足,并且or:两个条件满足其一,和not:不是-- 执行顺序:先not、再and,后or
*/

逻辑运算符练习

-- 1、查询10号部门和20号部门的员工信息
select * from scott.emp where deptno = 10 or deptno = 20;-- 2、查询10号部门中工资超过2000的员工信息(两个条件同时满足条件,并且)
select * from scott.emp where deptno = 10 and sal > 2000;-- 3、查询10号部门中工资超过2000的员工信息和20号部门且工资小于1000的(两个条件同时满足条件,并且)
select * from scott.emp where deptno = 10 and sal > 2000;
select * from scott.emp where deptno = 10 and sal > 2000 
or deptno = 20 and sal < 1000;-- 4、查询10号和20号两个部门中,工资都高于2000的员工信息(并且)
select * from scott.emp where (deptno = 10 or deptno = 20) and sal > 2000;-- 5、查询不是20号部门的员工
select * from scott.emp where deptno <> 20;
select * from scott.emp where deptno != 20;-- 6、找出工资大于800的员工 CLERK 和工资大于900的销售员 SALESMAN
select * from scott.emp where (job = 'CLERK' and sal > 800) or (job = 'SALESMAN' and sal > 800);

相关文章:

Oracle-day1:scott用户、查询、取整、截取、模糊查询、别名——23/8/23

整理一下第一天软件测试培训的知识点 1、scott用户 -- 以system管理员登录锁定scott用户 alter user scott account lock;-- 以system管理员登录解锁scott用户 alter user scott account unlock;-- 以system管理员用户设置scott用户密码 alter user scott identfied by tiger…...

stm32之3.key开关

假设key电阻为40kΩ&#xff0c;则key0 的电压3.3v*4/52.64v 2.key开关代码 ② GPIO_OType_PP//推挽输出 GPIO_OType_PP//开漏输出 推挽输出是指输出端口可以同时提供高电平和低电平输出&#xff0c;而开漏输出则是指输出端口只能提供低电平输出&#xff0c;高电平时需要借…...

GPT带我学-设计模式-代理模式

什么是代理模式 代理模式&#xff08;Proxy Pattern&#xff09;是设计模式中的一种结构型模式&#xff0c;它为其他对象提供一种代理以控制对这个对象的访问。 代理模式有三个主要角色&#xff1a;抽象主题&#xff08;Subject&#xff09;、真实主题&#xff08;Real Subje…...

VMware Workstation Pro 无法使用开机状态下拍的快照来克隆虚拟机,怎么解决?

环境: VMware Workstation Pro16.0 Win10 专业版 问题描述: VMware Workstation Pro有台虚拟机在开机状态下拍了个6.7快照这个win10初始版,现在想在这个快照下直接克隆,无法使用开机状态下拍的快照创建克隆 解决方案: 1.关闭当前虚拟机 2.到虚拟机文件夹复制一份Wind…...

【JAVA】XML及其解析技术、XML检索技术、设计模式

XML XML(Extensible Markup Language)是可扩展标记语言的缩写&#xff0c;它是一种数据表示格式&#xff0c;可以描述复杂的数据结构&#xff0c;常用于传输和存储数据 作用&#xff1a; 用于进行存储数据和传输数据作为软件的配置文件 第一行是文档声明 <?xml version&q…...

Ansible 自动化安装软件

例子如下&#xff1a; 创建一个名为/ansible/package.yml 的 playbook : 将 php 和 mariadb 软件包安装到 dev、test 和 prod 主机组中的主机上 将 RPM Development Tools 软件包组安装到 dev 主机组中的主机上 将 dev 主机组中主机上的所有软件包更新为最新版本 --- - name:…...

简单介绍 React Native 整合 Formik 实现表单校验

Formik 是 React 和 React Native 开源表单库&#xff0c;Formik 负责处理重复且烦人的事情——跟踪值/错误/访问的字段、编排验证和处理提交——所以您不必这样做。而简化字段校验的话我们可以使用yup工具来实现。 首先安装Formik 和 Yup npm i formik npm i yupFormik 与 R…...

蓝帽杯半决赛2022

手机取证_1 iPhone手机的iBoot固件版本号:&#xff08;答案参考格式&#xff1a;iBoot-1.1.1&#xff09; 直接通过盘古石取证 打开 取证大师和火眼不知道为什么都无法提取这个 手机取证_2 该手机制作完备份UTC8的时间&#xff08;非提取时间&#xff09;:&#xff08;答案…...

电路学习+硬件每日学习十个知识点(40)23.8.20 (希腊字母读音,阶跃信号和冲激信号的关系式,信号的波形变换,信号的基本运算,卷积积分,卷积和)

文章目录 1.信号具有时间特性和频率特性。2.模拟转数字&#xff0c;抽样、量化、编码3.阶跃信号和冲激信号4.信号的波形变换&#xff08;时移、折叠、尺度变换&#xff09;5.信号的基本运算&#xff08;加减、相乘、微分与积分、差分与累加&#xff09;5.1 相加减5.2 相乘5.3 微…...

Python——列表(list)推导式

本文基于python3。 目录 1、Python推导式2、列表(list)推导式2.1、定义2.2、实际操作2.2.1、一个表达式&#xff0c;后面为一个 for 子句2.2.2、一个表达式&#xff0c;后面为一个 for 子句&#xff0c;然后&#xff0c;跟着if 子句。2.2.3、一个表达式&#xff0c;后面为一个…...

代码随想录算法训练营day43 | LeetCode 1049. 最后一块石头的重量 II 494. 目标和 474. 一和零

1049. 最后一块石头的重量 II&#xff08;题目链接&#xff1a;力扣&#xff08;LeetCode&#xff09;官网 - 全球极客挚爱的技术成长平台&#xff09; 思路&#xff1a;把全部石头重量加起来&#xff0c;然后除以二&#xff0c;就等于背包的最大容量。然后就可以按照背包问题…...

Linux安装jdk、mysql、并部署Springboot项目

&#x1f61c;作 者&#xff1a;是江迪呀✒️本文关键词&#xff1a;Linux、环境安装、JDK安装、MySQL、MySQL安装☀️每日 一言&#xff1a;知行合一&#xff01; 文章目录 一、前言二、安装步骤2.1 安装JDK&#xff08;1&#xff09;创建文件夹&#xff08;便于后…...

tomcat更改端口号和隐藏端口号

因为默认端口:8080不会自动隐藏&#xff0c;因此为了更显格调需要将其改为:80 进入tomcat的server文件 将其改为80&#xff0c;之后将tomcat重新启动即可 tomcat启动流程 [rootshang ~]# cd /usr/local/tomcat/apache-tomcat-8.5.92 [rootshang apache-tomcat-8.5.92]# cd b…...

生信分析Python实战练习 2 | 视频19

开源生信 Python教程 生信专用简明 Python 文字和视频教程 源码在&#xff1a;https://github.com/Tong-Chen/Bioinfo_course_python 目录 背景介绍 编程开篇为什么学习Python如何安装Python如何运行Python命令和脚本使用什么编辑器写Python脚本Python程序事例Python基本语法 数…...

wps设置其中几页为横版

问题&#xff1a;写文档的时候&#xff0c;有些表格列数太多&#xff0c;页面纵向显示内容不完整&#xff0c;可以给它改成横向显示。 将鼠标放在表格上一页的底部&#xff0c;点击‘插入-分页-下一页分节符’。 将鼠标放在表格页面的底部&#xff0c;点击‘插入-分页-下一页分…...

如何在Ubuntu 22.04上安装PHP 8.1并设置本地开发环境

引言 PHP是一种流行的服务器脚本语言&#xff0c;用于创建动态和交互式web页面。开始使用你选择的语言是学习编程的第一步。 本教程将指导您在Ubuntu上安装PHP 8.1&#xff0c;并通过命令行设置本地编程环境。您还将安装依赖管理器Composer&#xff0c;并通过运行脚本来测试您…...

wazuh安装与使用

目录 一、wazuh安装 二、wazuh使用 一、wazuh安装 下载&#xff1a;https://wazuh.com 可以直接安装OVA这个&#xff0c;然后导入到Linux中就可以使用了。 导入完毕后开启&#xff0c;使用远程连接工具进行连接&#xff0c;出现以下画面则成功了。 之后可以看一下图形化界面…...

Vue 3 常见面试题汇总

前端面试题库 &#xff08;面试必备&#xff09; 推荐&#xff1a;★★★★★ 地址&#xff1a;前端面试题库 前言 最近两年许多大厂都在实行“降本增效”、“优化组织架构”&#xff0c;然后“为社会输送了大量人才”&#xff0c;今年&#xff08;2023&#xff…...

Docker是什么?详谈它的框架、使用场景、优势

作者&#xff1a;Insist-- 个人主页&#xff1a;insist--个人主页 作者会持续更新网络知识和python基础知识&#xff0c;期待你的关注 目录 一、什么是 Docker&#xff1f; 二、Docker 的架构 1、Docker客户端 2、Docker守护进程 3、Docker镜像 4、Docker容器 5、Docker…...

neo4j

UNWIND 将列表里的值展开 CREATE (N0:Person {name: Anders}) CREATE (N1:Person {name: Becky}) CREATE (N2:Person {name: Cesar}) CREATE (N3:Person {name: Dilshad}) CREATE (N4:Person {name: George}) CREATE (N5:Person {name: Filipa})CREATE (N0)-[:KNOWS]->(N3)…...

工业自动化实战:三大品牌伺服驱动器IO与串口引脚接线全解析

1. 伺服驱动器接线基础&#xff1a;为什么IO与串口引脚如此重要 第一次接触伺服驱动器时&#xff0c;我被密密麻麻的接线端子吓到了。后来才发现&#xff0c;只要理解几个核心引脚的功能&#xff0c;剩下的都是举一反三。伺服驱动器的IO和串口引脚就像机器的"神经系统&quo…...

RWKV7-1.5B-g1a参数详解教程:temperature/top_p/max_new_tokens调优指南

RWKV7-1.5B-g1a参数详解教程&#xff1a;temperature/top_p/max_new_tokens调优指南 1. 模型简介 rwkv7-1.5B-g1a 是基于 RWKV-7 架构的多语言文本生成模型&#xff0c;特别适合以下场景&#xff1a; 基础问答文案续写简短总结轻量中文对话 这个模型在单卡 24GB 显存的设备上…...

从零到一:基于泛微E9开源资源的企业级业务模块二次开发实战指南

1. 为什么选择泛微E9进行二次开发&#xff1f; 泛微E9作为国内领先的OA系统&#xff0c;在企业信息化建设中扮演着重要角色。我接触过不少企业客户&#xff0c;他们选择E9的主要原因很简单&#xff1a;开箱即用的功能已经能满足80%的日常办公需求&#xff0c;而剩下的20%特殊需…...

从机器人ROS2到微服务gRPC:手把手教你用IDL定义跨语言通信的‘世界语’

从机器人ROS2到微服务gRPC&#xff1a;手把手教你用IDL定义跨语言通信的‘世界语’ 清晨的阳光透过实验室的玻璃窗洒进来&#xff0c;机械臂正在执行预设的轨迹动作&#xff0c;而云端的数据分析服务实时监控着它的能耗曲线。这个看似简单的场景背后&#xff0c;隐藏着一个复杂…...

Web开发中前端与Node服务中的信息安全与解决办法

Web开发中前端与Node服务中的信息安全与解决办法 input限制特殊字符和长度 漏洞描述&#xff1a; 永远不要相信用户输入的信息&#xff0c;如常规的注入脚本通过input输入之后被页面执行 整改办法 方法1&#xff1a;对于vue项目中ElementUI的el-input 和 原生input <el-in…...

4步实现Android Studio本地化配置:从语言障碍到高效开发

4步实现Android Studio本地化配置&#xff1a;从语言障碍到高效开发 【免费下载链接】AndroidStudioChineseLanguagePack AndroidStudio中文插件(官方修改版本&#xff09; 项目地址: https://gitcode.com/gh_mirrors/an/AndroidStudioChineseLanguagePack 问题诊断&…...

SYNBO AMA 回顾|当稳定币突破 3000 亿,一级的“钱”到底在往哪里流?

一、 聊了什么&#xff1a;背景与主题时间&#xff1a;2026 Mar 25 (Wed) 20:00 UTC8主题&#xff1a; Stablecoins Primary Market: The New Capital Stack Powering Global Payments in 2026在昨晚举行的一场围绕“稳定币、PayFi 与全球支付”的 AMA 中&#xff0c;SYNBO 与…...

macOS歌词体验升级:LyricsX实现多播放器无缝歌词同步方案

macOS歌词体验升级&#xff1a;LyricsX实现多播放器无缝歌词同步方案 【免费下载链接】LyricsX &#x1f3b6; Ultimate lyrics app for macOS. 项目地址: https://gitcode.com/gh_mirrors/ly/LyricsX 你是否曾在使用macOS音乐播放器时遭遇歌词显示不同步、搜索不到匹配…...

网络安全这个技能学会了,不考研也能迅速找到高薪工作

网络安全这个技能学会了&#xff0c;不考研也能迅速找到高薪工作 近几年“考研热”持续升温&#xff0c;报名人数和报录比屡创新高。据数据显示&#xff1a;2003年全国考研人数仅仅才70万&#xff0c;直至2017年考研人数才刚刚突破200万。而今年考研人数居高达457万&#xff0…...

如何轻松实现专业音频低延迟:FlexASIO实用配置完全指南

如何轻松实现专业音频低延迟&#xff1a;FlexASIO实用配置完全指南 【免费下载链接】FlexASIO A flexible universal ASIO driver that uses the PortAudio sound I/O library. Supports WASAPI (shared and exclusive), KS, DirectSound and MME. 项目地址: https://gitcode…...