下载以及安装数据库
四张表
dept emp salgrade bonus
简单查询
所谓的简单查询指的是查询一张表之中全部数据行的记录。简单查询的语法如下
范例:简单查询
SELECT [DISTINCT] * | 列名称 [别名],... ==<确定数据显示列
FROM 表名称 [别名];
对于简单查询而言,其每一个子句(FROM子句,SELECT子句)的执行顺序如下:
第一步:执行FROM子句,以确定要显示的数据来源:
第二步:执行SELECT子句,确定要显示的数据列;
对于SELECT子句而言,如果要显示全部的数据列,那么就使用“*”,如果要查询固定的数据列,则需要写
列的名称,
范例:查询emp表中的全部记录
SELECT * FROM emp;
范例:查询每个雇员的编号,姓名,职位,基本工资
SELECT empno,ename,job,sal
FROM emp;
范例:查询所有雇员的职位
职位信息一定存在有重复数据,所以首先发出如下的查询。
SELECT job FROM emp;
下面使用DISTINCT消除所有重复列
SELECT DISTINCT job FROM emp;
但是对于重复的数据消除还是有一点需要说明,只有在两行中所有的数据全部相同的时候才可以消除重复列
范例:查询每个雇员的姓名,职位
SELECT DISTINCT cname,job
FROM emp;
除了基本的查询列之外,各个列之间也可以方便的实现数学的四则运算
范例:现在要求查询出每个雇员的编号,姓名,基本年薪(sal*12)
SELECT empno,ename,sal*12 FROM emp;
这个时候发现直接将“sal*12”作为了列的名称,但是这样命名不合适,所以可以使用别名的方法
范例:为查询设置别名
SELECT empno,ename,sal*12 income FROM emp;
有了别名之后可以发现,查询之后列名称可以自动的进行替换
范例:现在每位雇员每个月有200元的饭食补贴,100元的汽车补贴,每年5-10月还有高温补贴500元,年底可以拿到
15个月的工资,那么查询每个雇员的编号,姓名,基本年薪
SELECT empno,ename,(300+sal)*12+500*6+sal*3 income FROM emp;
四则运算同样可以使用“()”改变优先级
在使用简单查询的时候,除了查询列名称之外,也可以查询单独的常量(日期,字符串,数字),但是所有的常量
随着每一行数据重复显示,对于常量的编写有如下要求(字符串和数字)
字符串:要求使用“'”声明,例如:'hello'
数字:直接编写数字,例如:1,2,3
SELECT empno,'hello' FROM emp;
虽然别名和常量都是字符串,但是别名声明的时候四不加单引号的,只有在常量的时候字符串才加单引号
同时还需要说明的是,在查询之中,SELECT子句里面也可以使用"||"进行连接
范例:观察连接符的使用
SELECT empno||ename FROM emp;
现在使用了 “||”连接了在一起,但是整体的输出效果并不理想,所以希望以如下的格式进行数据的显示
编号:7369 姓名:SMTTH,职位:CLERK
SELTCT '编号:'|| empno ',姓名:' || ename ',职位:' || job FROM emp;
以上的这种意义不大,只是作为一个知识点清楚就行了