使用SELECT语句检索数据
奔跑的男人 · 362浏览 · 发布于2019-06-03 +关注

select指令适用于SQL数据库

SELECT 语句用于从数据库中选取数据。(指令不分大小写,选择的值除名字和一些有特殊意义的字符可不分大小写,from结束时一定要加;)


1.用法

select  column_name  from  table_name;

select 标识选择那些列

from 标识从哪个表中选择


实例

SQL> select * from dept ;
    DEPTNO DNAME          LOC
---------- -------------- -------------
        10 ACCOUNTING     NEW YORK
        20 RESEARCH       DALLAS
        30 SALES          CHICAGO
        40 OPERATIONS     BOSTON

查询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

查询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


因为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

nvl(,)函数用于规定如何处理nvll值,给null赋一个值


4.定义列别名

给列重新定义个列别名(除数字外,其他字符需加" ")

select  column_name as "column"
from  table_name;

给列定义别名时需在原有的列名后加 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

把表格内容用短语的形式输出


6.去重distinct

distinct去除列重复的值

SQL> select distinct job,deptno
  2  from emp;
JOB           DEPTNO
--------- ----------
MANAGER           20
PRESIDENT         10
CLERK             10
SALESMAN          30
ANALYST           20

查看某列的信息去除重复的值


本文只适用于学习oracle数据库的初期阶段


相关推荐

部署MySQL延迟从库的几个好处

吴振华 · 245浏览 · 2019-05-14 21:57:51
MongoDB凭什么跻身数据库排行前五?

iamitnan · 289浏览 · 2019-06-18 10:04:56
Oracle开启和关闭的几种模式

qq2360248666 · 307浏览 · 2019-06-04 10:18:47
加载中

0评论

评论
分类专栏
小鸟云服务器
扫码进入手机网页