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. Evernote相关技术介绍——mysql+lucene+tomcat

    Evernote服务 我们的服务由以下几个组件组成. 分片(NoteStore)   分片是Evernote服务的核心单元,用于存储用户的笔记.每个分片最多可以支撑30万个Evernote用户,并包含 ...

  2. BZOJ_5343_[Ctsc2018]混合果汁_二分答案+主席树

    BZOJ_5343_[Ctsc2018]混合果汁_二分答案+主席树 题意:给出每个果汁的价格p,美味度d,最多能放的体积l.定义果汁混合后的美味度为果汁的美味度的最小值. m次询问,要求花费不大于g, ...

  3. 【转】js中15个常用的正则表达式+正则集合

    1 用户名正则 //用户名正则,4到16位(字母,数字,下划线,减号) var uPattern = /^[a-zA-Z0-9_-]{4,16}$/; //输出 true console.log(uP ...

  4. Windbg脚本和扩展工具开篇

    好长一段时间没写文章了,最近一直忙于为项目的可调式性做一些脚本和扩展工具,鉴于对windbg强大威力的震撼,以及相对较少的资料,笔者决定写一系列关于如何开发Windbg脚本和扩展命令的文章,您的支持是 ...

  5. robotframework收藏

    收藏文章 http://www.360doc.com/userhome/38592059

  6. vue demo todo-list

    html <input type='text' v-model="todoItem" v-on:keyup.enter='addItem'> <ul> &l ...

  7. bzoj1933

    背包dp 一道很早以前就见过的dp dp[i][j][k]表示选到第i本书,第一层宽度为j,第二层宽度为k的最小高度,我们先把书按高度排序,然后转移就很方便了,因为高度降序,所以后选的书不影响之前选的 ...

  8. 转载:NOR Flash擦写和原理分析

    1. NOR FLASH 的简单介绍 NOR FLASH 是很常见的一种存储芯片,数据掉电不会丢失.NOR FLASH支持Execute On Chip,即程序可以直接在FLASH片内执行(这意味着存 ...

  9. mysqlnd cannot connect to MySQL 4.1+ using old authentication

    报这个错误主要是因为mysql使用了老的密码格式,而程序要求使用新的格式导致的,解决办法: SET old_passwords = 0; UPDATE mysql.user SET Password ...

  10. bzoj 2005: [Noi2010]能量采集【莫比乌斯反演】

    注意到k=gcd(x,y)-1,所以答案是 \[ 2*(\sum_{i=1}^{n}\sum_{i=1}^{m}gcd(i,j))-n*m \] 去掉前面的乘和后面的减,用莫比乌斯反演来推,设n< ...