Oracle-----SQL简单查询
上一篇????:SQL简介和数据表分析
文章目录
????大家好!我是近视的脚踏实地,这篇文章主要是讲述SQL简单查询
唯有行动 才能解除你所有的不安
1、目标
1、掌握SQL查询的基本语法
2、SQL进行查询的各种操作
2、具体内容
2.1简单查询
如果要进行查询,那么肯定要使用的是DQL(Data Query Language)数据查询语言,而对于简单查询来讲,通俗的理解就是可以将数据表中的全部记录都查询出来,但是可以通过这样的语法控制列的显示与否。
简单查询的SQL语法结构如下所示????:
②select [distinct] * | 列 [别名],列 [别名],…
①from 表名称 [别名];
(上面是一条语句,标号是表示他们有自己的执行顺序,就是在整个语句之中,第一个执行的是,第二个执行的才是select,执行顺序是相当重要的)
如果在select子句中使用了"*"表示的是查询一张表的所有数列。
(那么子句就是select开头,后边有一堆代码,就是select的子句,from开头,后面还有代码,就是from的子句)
2.1.1查询表中所有记录
范例: 查询emp表中全部记录
select * from emp;
(在本程序之中,form子句是确定数据的来源,来源只要是表结构(行与列的集合),不一定都表,而select子句控制的是所需要的数据列。)
2.1.2查询指定列的记录
范例: 进行数据的投影 ----控制所需要显示的数据列
※查询每个雇员的编号、姓名、职位、基本工资。
select empno,ename,sal,job from emp;
2.1.3查询带四则运算列的记录
除了进行基本的查询列之外,在简单查询之中也支持四则运算,并且可以直接使用列的内容进行四则运算,例如,现在要求查询出每个雇员的编号、姓名、基本年薪(月工资是sal,年薪*12)。
select empno,ename,sal*12 from emp;
2.1.4查询时设置列的别名
发现此时有部分的列名称不好看,所以为了达到美观,可以进行别名设置。
select empno,ename,sal*12 income from emp;
中文也可以设置(一般人真不用)。
select empno 雇员编号,ename 姓名,sal*12 年薪 from emp;
实际上在以后定义数据表名称或者是列名称的时候中文也支持,但是如果你想你的开发正常点,别用中文
2.1.5查询过程中的数据连接操作
实际上在进行简单查询的过程之中,还支持数据的连接操作,使用"||"进行连接。
范例: 观察连接
select empno || ename from emp;
可以将数据之间的连接变得再好看一些。可以中间使用一些文字描述。例如,现在希望最终的格式是:“编码:xxx ,姓名:xxx”,那么对于编号和姓名肯定是通过数据表查询出来的数据列。但是现在对于一些固定输出的内容就必须进行处理,实际上对于此部分的处理暂时只考虑两种类型的数据:
※普通数字:那么直接编写
select ename || 1 from emp;
※字符串:使用单引号声明
(使用单引号是为了和列名称区分)
select empno || ‘hello’ from emp;
范例: 实现格式化的输出操作
select ‘编号:’ || empno || ', 姓名: ’ || ename from emp;
2.1.6 distinct关键字
在简单查询操作之中还存在有一个distinct关键字,此关键字主要目的是消除重复内容。
范例: 查询所有雇员的职位信息
select job from emp;
很明显,同一个职位一定有多个人一起办公。那么现在如果不希望里面出现重复内容,那么就可以在select子句之中增加distinct消除掉重复内容。
select distinct job from emp;
需要提醒的是,如果是消除重复内容,指的是查询出来的数据所有列的内容都重复
范例: 观察如下查询
select distinct ename,job from emp;
因为姓名和职位没有同时重复,那么将无法删除掉重复数据。
3、总结
简单查询中的最大特征在于:控制数据列,但是它无法进行数据行的控制
本篇博客到这就完啦,非常感谢您的阅读????,如果对您有帮助,可以帮忙点个赞或者来波关注鼓励一下喔???? ,嘿嘿????