oracle基本语法(2)

1.基础查询

查看表中的所有数据:select * from 表名
查看表中的列1,列2,列3,……:select 列1,列2,列3,…… from 表名;
重命名表中的列(起别名):select 列名1 新列名,列名2 新列名,列名3 新列名,…… from 表名;(注:只是输出修改,数据库并未修改)
给表起别名:select * from 原表名,新表名;

注意:其实是查询结果以别名输出,并不能修改原结构与原内容,因为select只是查询语句。

2.条件查询

单条件或多条件查询语法: select * from 表名 where 查询条件(查询条件即:列名 运算符 '搜索值')
and 条件连词,where 列名 运算符 搜索值 and 列名 运算符 搜索值 and 列名 运算符 搜索值,同时满足条件(交集)
or 条件连词,where 列名 运算符 搜索值 or 列名 运算符 搜索值 or 列名 运算符 搜索值,满足其中一个条件(并集)
in 条件连词,多值运算符,语法:where 列名 in ('搜索值1','搜索值2','搜索值3');满足其中一个条件的都查询出来,仅限等于
not 取反,条件连词,语法:where not (列名 运算符 '搜索值' or 列名 运算符 '搜索值2' or 列名 运算符 搜索值'3');用于查询一个或多个条件,既不是a也不是b
between and 条件连词,语法 where 列名 between '搜索值1' and '搜索值2';查询条件即大于等于搜索值1,小于等于搜索值2,且搜索值1必须小于搜索值2
like 条件查询之模糊查找,语法:select * from 表名 where 列名 like '%A_';注:like 不能单独使用,必须结合通配符%或者_使用, 注_表示占位符,代表一个任意字符,%代表0个或任意多个字符
order by 条件连词,
语法:select * from 表名 where 查询条件 order by 列名1 排序方式1,列名2 排序方式2;asc 升序,系统默认升序,desc 降序。
或者select * from 表名 order by 列名1 排序方式1,列名2 排序方式2;
3.去重复,返回唯一不同的值,完全一样的去掉多余的,只保留一行:

将列名一样的去重复——语法:select distinct 列名 from 表名;
如:将job一样的去重复:select distinct job from emp;
将列名1且列名2都一样的信息去重复——语法:select distinct 列名1,列名2 from 表名;
如:将job且sal都一样的去重复
select distinct job,sal from emp;

4.
||:列的拼接符,用来拼列或者字符串。如:select ename||'薪水是'||sal from emp;
,:列的分隔符,用来分隔列的

5.null 空值
空值表示不确定的值,未知的值,任何值与空值做完运算后得的都是空值。
空值查询语法: select * from 表名 where 列名 is (not)null;

6.空值转换函数
nvl(参数1,参数2)
功能:转换空值为一个特定的值
参数1:需要转换到列名,参数2:需要指定的特定的值
select nvl(comm,200) from emp ;将comm为空值的转换为200;

7.运算符不等于的两种写法:!=或者<>

8.运算符=的两个功能
在查询语句中,是精确查询的运算符
在update语句中放在set后面用于赋值

9.and 的优先级高于 or

10.列名+列名即两列取和
select ename,sal+nvl(comm,200) from emp;先将comm为空值的转换为200,然后查询员工及员工薪水津贴总和

11.搜索值要用单引号''括起来,数字可以不用,标点符号要用英文输入,语句以分号;结尾。

12.两个语句一起执行,选中语句,点击运行脚本;

13.desc 表名:查看表的结构,即查看表中列的信息,每列定义的数据类型;desc描述的意思description

14.数据库中表名唯一,但表名自身不区分大小写,emp 与EMP 指的是同一个表,列名也不区分大小写,但是搜索表中的数据是严格区分大小写的。

15.select job,ename from emp;与select ename,job from emp;的区别在于查询出来列的顺序不一样

猜你喜欢

转载自www.cnblogs.com/yaoze2018/p/10503573.html