使用SELECT语句检索数据
使用SELECT语句检索数据
select指令适用于SQL数据库
SELECT 语句用于从数据库中选取数据。(指令不分大小写,选择的值除名字和一些有特殊意义的字符可不分大小写,from结束时一定要加;)
1.用法
select  column_name  from  table_name;
1
select 标识选择那些列
from 标识从哪个表中选择
实例
SQL> select * from dept ;
    DEPTNO DNAME          LOC
---------- -------------- -------------
        10 ACCOUNTING     NEW YORK
        20 RESEARCH       DALLAS
        30 SALES          CHICAGO
        40 OPERATIONS     BOSTON
1
2
3
4
5
6
7
8
查询dept表中每一行的信息(这里的*是每一列的意思)
2.算数表达式
使用算术运算符可以创建包含数字和日期数据的表达式(优先级和数学一样,先乘除后加减,有括号先算括号)
操作符	描述
+	加号
-	减号
*	乘号
/	分号
实例
SQL> select sal,sal+2000,ename
  2  from emp;
  
       SAL   SAL+2000 ENAME
---------- ---------- ----------
       800       2800 SMITH
      1600       3600 ALLEN
      1250       3250 WARD
      2975       4975 JONES
      1250       3250 MARTIN
      2850       4850 BLAKE
1
2
3
4
5
6
7
8
9
10
11
查询emp表中sal,sal+2000,ename的信息
3.空值null
null是一个未知的值,不是0也不是空格(运算时加null是没有结果的)
实例
SQL> select ename,sal,12*sal+comm
  2  from emp;
ENAME             SAL 12*SAL+COMM
---------- ---------- -----------
SMITH             800
ALLEN            1600       19500
WARD             1250       15500
JONES            2975
MARTIN           1250       16400
BLAKE            2850
CLARK            2450
1
2
3
4
5
6
7
8
9
10
11
12
因为null的未知所以不会输出(若是想计算null这里我们用一个函数nvl( ,)去给nul一个值)
SQL> select ename,sal,12*sal+ nvl(comm,0)
  2  from emp;
ENAME             SAL 12*SAL+NVL(COMM,0)
---------- ---------- ------------------
SMITH             800               9600
ALLEN            1600              19500
WARD             1250              15500
JONES            2975              35700
MARTIN           1250              16400
BLAKE            2850              34200
CLARK            2450              29400
1
2
3
4
5
6
7
8
9
10
11
12
nvl(,)函数用于规定如何处理nvll值,给null赋一个值
4.定义列别名
给列重新定义个列别名(除数字外,其他字符需加" ")
select  column_name as "column"
from  table_name;
1
2
给列定义别名时需在原有的列名后加 as ""或者直接空格加新的列名(只是临时定义,不是永久保存)
5. || 连接符
|| 把列与列连接起来,除数字以外字符需要加’’(||前后都要加空格)
SQL> select 'my name is ' || ename
  2  from emp;
'MYNAMEIS'||ENAME
---------------------
my name is SMITH
my name is ALLEN
my name is WARD
my name is JONES
my name is MARTIN
my name is BLAKE
my name is CLARK
1
2
3
4
5
6
7
8
9
10
11
12
把表格内容用短语的形式输出
6.去重distinct
distinct去除列重复的值
SQL> select distinct job,deptno
  2  from emp;
JOB           DEPTNO
--------- ----------
MANAGER           20
PRESIDENT         10
CLERK             10
SALESMAN          30
ANALYST           20
1
2
3
4
5
6
7
8
9
10
查看某列的信息去除重复的值
本文只适用于学习oracle数据库的初期阶段
--------------------- 
 
                     
                    
                 
                    
                 
 
                
            
         
         浙公网安备 33010602011771号
浙公网安备 33010602011771号