SQL select 及相关操作

SQL是用于访问和处理数据库的标准的计算机语言,我们所使用的的是Oracle SQL

一个数据库通常包含一个或多个表,每个表有一个名字表示,下图即为一个名为“emp”的表,接下来的操作都将基于以下的表进行

SQL select 及相关操作

下述为select语法,注意:SQL对大小写不敏感

- SELECT 列名称 FROM 表名称
- select * from 表名称
  • SQL支持数学表达式 如

    select  ename,sal+300 from emp 
  • SQL可以使用" || "字段合并 如
    select ename || job as comployee from emp 
  • SQL 可以使用 select distinct 语句 删除重复字段 如
    select distinct job from emp
  • SQL可以使用 select where 子句 进行条件删除 如
select * from emp where sal = 800
select * from emp where comm is null //is 只能跟null一起使用
操作符 描述
= 等于
<> 不等于
> 大于
< 小于
>= 大于等于
<= 小于等于
BETWEEN 在某个范围内
LIKE 搜索某种模式

左列运算符可以在Where子句中使用:

在进行条件之筛选时,注意使用单引号引用文本值,而数值不需要符号引用,如

select * from emp where job = 'SALESMAN'

在进行日期的比较时,必须使用单引号围绕,注意Date的特殊存储形式,如:

select * from emp where hiredate = '20/2月/81'
  • SQL支持特殊的比较运算符:between…and… ,in,like(模糊搜索)如:

    select  * from emp where sal between 1000 and 1500
    select * from emp where job in ('CLERK','SALESMAN')
    select * from emp where ename like '%S%'

【通配符】

在搜索数据库中的数据时,SQL 通配符可以替代一个或多个字符。SQL 通配符必须与 LIKE 运算符一起使用。

在SQL中,可使用

通配符 描述
% 替代一个或多个字符
_ 仅替代一个字符
  • SQL支持使用ESCAPE标识符和'@'配合使用 实现对“%”和“_”的查找,如
select * from emp where ename like 'MAN@_%' escape '@'
  • SQL支持使用逻辑运算符:AND、OR和NOT,如:
select * from emp where job = 'SALESMAN' AND hiredate = '20/2月/81'

优先级顺序:算术运算符 > 连接运算符 > 比较运算符 > 特殊比较运算符 > not > and > or   ()级别最高

【例题】

select ename,job,sal from emp where sal > 2000 AND job ='MANAGER' OR job ='SALESMAN'
select ename,job,sal from emp where sal > 2000 AND (job ='MANAGER' OR job ='SALESMAN')
select Deptno,job,sal from emp where sal between 3000 and 5000
select ename,hiredate,job from emp where hiredate between '01-1月-81' and '31-12月-81' AND job like 'SALES%'
select ename,job,Deptno from emp where deptno in (10,20) AND (job='SALESMAN' OR job = 'MANAGER')
  • SQL支持使用ORDER BY语句进行排序,语法结构如下

  

    • 可以按照列名、表达式、列别名、结果集的列序号排序
    • ASC: 升序,默认值 DESC: 降序
    • ORDER BY 子句必须写在SELECT语句的最后
    • 多关键字排序,直接在by写多关键字,用逗号隔开
    • 排序也可以按列序号替代

如:

select ename,job,sal from emp order by sal
select ename,job,sal from emp order by Job,sal DESC

【东软实训】SQLselect及其相关操作的更多相关文章

  1. 逆袭之旅DAY15.东软实训.Oracle.约束、序列、视图、索引、用户管理、角色

    2018-07-11  08:26:00 有某个学生运动会比赛信息的数据库,保存了如下的表: 运动员sporter表:(运动员编号sporterid,运动员姓名name,运动员性别sex,所属系dep ...

  2. 【东软实训】SQL函数

    SQL函数 SQL是用于访问和处理数据库的标准的计算机语言,我们所使用的的是Oracle SQL 一个数据库通常包含一个或多个表,每个表有一个名字表示,下图即为一个名为“emp”的表,接下来的操作都将 ...

  3. 东软实训1 -jsp内置对象及其常用方法

    JSP 的内置对象及方法详细说明 一. request 对象 客户端的请求信息被封装在 request 对象中,通过它才能了解到客户的需 求,然后做出响应.它是 HttpServletRequest ...

  4. 东软实训4-JDBC连接数据库

    JDBC(Java Data Base Connectivity,java数据库连接)是一种用于执行SQL语句的Java API,可以为多种关系数据库提供统一访问,它由一组用Java语言编写的类和接口 ...

  5. 【东软实训】SQL多表链接

    如果一个查询同时涉及两个以上的表,则称之为链接查询,链接查询是关系数据库中最主要的查询,主要包括等值链接查询.非等值链接查询.自身链接查询.外链接查询和复合条件链接查询. 这篇博文我们来对多表链接进行 ...

  6. Python实训day07pm【Selenium操作网页、爬取数据-下载歌曲】

    练习1-爬取歌曲列表 任务:通过两个案例,练习使用Selenium操作网页.爬取数据.使用无头模式,爬取网易云的内容. ''' 任务:通过两个案例,练习使用Selenium操作网页.爬取数据. 使用无 ...

  7. 东软实训3-servlet基础

    Java Servlet技术的核心就是在服务端创建能响应用户请求的对象,被创建的对象习惯上称为一个Servlet对象. 编写一个创建servlet对象的类就是编写一个特殊类的子类,这个特殊的类就是ja ...

  8. 东软实训2-在jsp中使用javaBean

    在JSP中可以像使用普通类一样访问JavaBean,在脚本元素中实例化类的对象,调用对象的方法.JSP提供了3个动作元素,和来访问JavaBean. 1.1 动作用于初始化JavaBean,或者定位一 ...

  9. 逆袭之旅DAY17.东软实训.Oracle.PLSQL.过程,函数,包,练习

    2018-07-13 14:54:46 --1.创建一个包,包含一个为雇员加薪的过程,一个为雇员减薪的过程 CREATE OR REPLACE PACKAGE pac_test1 IS PROCEDU ...

随机推荐

  1. 五.OC基础--1.多态,2.类对象,3.点语法,4.@property&@synthesize,5.动态类型,内省(判断对象是否遵循特定的协议,以及是否可以响应特定的消息)

    五.OC基础--1.多态, 1. 多态概念,定义:多态就是某一类事物的多种形态: 表现形式: Animal *ani = [Dog new]; 多态条件:1.有继承关系 2.有方法的重写 2.多态代码 ...

  2. AutoIT: 学习对GUI Sample上所有的资源进行操作

    $handle= WinGetHandle("Sample GUI") ;,"SRE Example 3 Result", $handle) $ctrl= Co ...

  3. 使用cgroups限制MongoDB的内存使用

    cgroups,其名称源自控制组群(control groups)的简写,是Linux内核的一个功能,用来限制,控制与分离一个进程组群的资源(如CPU.内存.磁盘输入输出等). 这个项目最早是由Goo ...

  4. DOS命令汇总

    汇总如下: Dos基础命令梳理思路 小编初来乍道, 不清楚我的插图在我发布后会不会不清晰, 因为我在排版时看到插入的图片是清晰的, 以前见其他条友发布的文章中总有不晰的图片, 很是不爽. 所以如果有不 ...

  5. jsp 中href链接有前缀

    在jsp页面中,如果有一个链接写为:“href="www.hqvolunteer.org"”(链接到的是外网),这样发布项目了后,把鼠标移到上面显示的是:你的项目路径/www.hq ...

  6. LayUI table表格控件 如何显示 对象中的属性(针对Mybatis的级联查询--一对一情况)

    1.entity如下: 2.Mybatis的Mapper.xml文件如下 <resultMap id="BaseResultMapPlus" type="dicIt ...

  7. 使用MvcMiniProfiler调试ASP.NET MVC网站性能

    http://www.cnblogs.com/qiuliang/archive/2011/12/01/2270909.html 使用MiniProfiler给Asp.net MVC和Entity Fr ...

  8. Linux 常用命令十五 用户和组操作命令

    一.创建一个用户 wang@wang:~/workpalce/threading$ sudo useradd -m python # -m创建家目录 wang@wang:~/workpalce/thr ...

  9. bzoj 1497 [NOI2006]最大获利【最大权闭合子图+最小割】

    不要被5s时限和50000点数吓倒!大胆网络流!我一个5w级别的dinic只跑了1s+! 看起来没有最大权闭合子图的特征--限制,实际上还是有的. 我们需要把中转站看成负权点,把p看成点权,把客户看成 ...

  10. bzoj 4405: [wc2016]挑战NPC【带花树】

    把每个筐子拆成3个,分别表示放0/1/2个,然后把这三个点两两连起来,每一个可以放在筐里的球都想这三个点连边. 这样可以发现,放0个球的时候,匹配数为1,放1个球的时候,匹配数为1,放2个球的时候,匹 ...