Oracle的基本学习(二)—基本查询

一、基本查询语句

(1)查看当前用户

show user;

 

(2)查看当前用户下的表

select * from tab;

 

(3)查看员工表的结构

desc emp;

 

(4)选择全部列

SELECT * FROM emp;

 

(5)选择特定的列

SELECT empno,ename,sal,comm,deptno FROM emp;

 

(6)定义空值

a: 空值是无效的,未指定的,未知的的值。

b: 空值不是空格或者0.

c: 包含空值的数据表达式的值都是空值。

--空值不同于0,凡是空值参与运算的都是空值--
select employee_id,
       last_name,
       salary,
       commission_pct,
       salary * (1 + commission_pct)
  from employees;

 

改写后:

--nvl函数--
--格式: nvl(E1,E2)--
--解释: 如果E1为NULL,则函数返回E2,否则就返回E1。--
select employee_id,
       last_name,
       salary,
       commission_pct,
       salary * (1 + nvl(commission_pct,0))
  from employees;

 

(7)使用别名

a:在列名后直接写。

b:在列名和别名之间添加关键字As。

c:使用双引号。

--使用别名--
select employee_id id,
       last_name as name,
       12*salary "annual_sal"
from employees;

 

(8)删除重复行

--使用关键字"DISTINCT"删除重复行--
select distinct department_id
from employees;

 

二、过滤和排序

(1)where子句

a:使用where子句,将不满足条件的行过滤掉。

b:where子句紧随from子句。

select employee_id,last_name,salary
from employees
where employee_id > 200;

 

(2)字符和日期

a:字符和日期要包含在单引号中。

b:字符大小写敏感,日期格式敏感。

c:默认日期格式是: DD-MM月-YYYY。

select employee_id, last_name, salary, hire_date
  from employees
 where hire_date=‘17-9月-1987‘;

 

这样写不方便,我们通常这样写:

select employee_id, last_name, salary, hire_date
  from employees
 where to_char(hire_date,‘yyyy-mm-dd‘)=‘1987-09-17‘;

时间: 2024-11-05 01:07:36

Oracle的基本学习(二)—基本查询的相关文章

MVC3学习 二 EF查询

EF操作数据库中的数据非常方便,例如查询: OumindBlogEntities db = new OumindBlogEntities(); public ActionResult Index() { //db.BlogArticles.Where(d => d.AIsDel == false) 的返回类型为DbQuery ,而DbQuery是延时加载的,也就是说只有当执行query.ToList();才执行查询语句 //DbQuery<MvcBlog.Models.BlogArticle&

Oracle Prc C学习 二

声明一个游标变量 EXEC SQL BEGIN DECLARE SECTION; SQL_CURSOR emp_cursor; sql_cursor dept_cursor; EXEC SQL END DECLARE SECTION; 这样定义后,如果使用前先要分配资源用ALLOCATE EXEC SQL ALLOCATE :emp_cursor; EXEC SQL ALLOCATE :dept_cursor; 使用完后,要关闭 EXEC SQL CLOSE :emp_cursor; EXEC

蜗牛—ORACLE基础之学习(二)

如何创建一个表,这个表和还有一个表的结构一样但没有数据是个空表,旧表的数据也插入的 create table newtable as select * from oldtable 清空一个表内的数据 delete from tablename

Oracle 数据库基础学习 (六) 子查询

1.内连接(等值连接) 示例:将连个表内容连接显示 select * from dept d, emp e where d.deptno = e.deptno; 注意:只有当d.deptno = e.deptno条件满足,内容才会显示,否则不显示 2 .外连接:让等值判断左右两边有一边的数据可以全部显示出来,使用外连接方式时使用”(+)” 格式:   左外连接:字段=字段(+) 右外连接:字段(+)=字段 示例:显示雇员的姓名,职位和领导姓名 分析: 确认要使用的数据: 1.  emp表的雇员姓

Oracle学习(二):过滤和排序

1.知识点:可以对照下面的录屏进行阅读 SQL> --字符串大小写敏感 SQL> --查询名叫KING的员工信息 SQL> select * 2 from emp 3 where ename = 'KING'; SQL> --日期格式敏感 SQL> --查询入职日期为17-11月-81的员工 SQL> select * 2 from emp 3 where hiredate='17-11月-81'; --正确例子 SQL> ed 已写入 file afiedt.b

Mybatis学习二(字段名与实体类属性名不相同/关联查询)

1.在写项目的时候会遇到数据库字段名与实体类属性名不同的情况,可能是为了方便也可能是其他要求,whatever,我们现在来解决这个问题 准备一个数据库表如下 1 CREATE TABLE orders( 2 order_id INT PRIMARY KEY AUTO_INCREMENT, 3 order_no VARCHAR(20), 4 order_price FLOAT 5 ); 接下类定义一个实体类 1 public class Order { 2 private int id; 3 pr

Oracle内存管理理论篇二

目标 了解oracle内存管理方式 掌握ASMM管理方式 掌握AMM管理方式 监控内存使用 学习一个知识点时,最好先了解其历史.ORACLE近期的版本都对内存管理做了简化,从9i通过PGA_AGGREGATE_TARGET参数实现PGA的自动管理,10g通过Automatic Shared Memory Management(ASMM)实现SGA的自动管理,到11g通过Automatic Memory Management(AMM)实现内存(SGA+PGA)的自动管理.目前的11G版本,DBA只

Oracle之函数学习以及事务

Oracle之函数学习 1.字符函数是oracle中最常用的函数 lower(char):将字符串转化为小写的格式 upper(char):将字符串转化为大写的格式 length(char):返回字符串的长度 substr(char,m,n):取字符串的子串 将所有的员工的名字按小写的方式显示? SQL> select lower(ename),sal from emp; LOWER(ENAM        SAL ---------- ---------- smith            

ORACLE 第4节 多表查询

学习目标: ?使用等值和不等值连接在SELECT语句中查询多个表中的数据. ?使用自连接. 使用外连接查询不满足连接条件的数据 Oracle连接 等值连接: 使用连接在多个表中查询数据. SELECT  table1.column, table2.column FROM  table1, table2 WHERE  table1.column1= table2.column2; ?在 WHERE 子句中写入连接条件. ?在表中有相同列时,在列名之前加上表名前缀 两个表的连接 select e.e