zoukankan      html  css  js  c++  java
  • oracle数据库学习笔记(二)

    第二章 简单的select查询语句

    1.select查询语句基本语法
    至少要用到两个关键字:
    1)select 用来指定查询的字段、内容
    2)from 用来指定从哪张表查询
    最基本的语法:select 字段 from 表名;
    三种不同的表现形式:
    1)查询某张表中特定的某一个字段
    select 字段名 from 表名;
    例如:
    查询所有员工的id?
    select id from s_emp;
    2)查询某张表中多个字段?
    select 字段名1,字段名2,字段名3......
    from 表名;
    注意:符号一定要使用英文的符号
    例如:
    查询所有员工的id、last_name?
    select id,last_name
    from s_emp;
    建议:每一个关键字占用一行位置。

    每一次select查询结果都相当于是一张表。
    3)查询某张表中的全部字段
    a)将表中的所有字段名全部列出来
    b)使用通配符*符号

    例如:查询部门表中全部字段?
    select id,name,region_id
    from s_dept;

    等同于:
    select *
    from s_dept;
    注意:*只在学习、练习、测试的时候使用。
    在项目开发的时候要把全部的字段都列出来。
    运行过程:
    a)直接定义字段名查询
    直接根据给定的字段名查询字段值
    b)使用*通配
    先查询该张表中有哪些字段?
    再根据查询的结果去取对应的字段值。

    在真正项目开发时,sql命令不需要每次都
    手敲。我们可以直接把一些常用的sql命令
    预定义到程序中。然后每次接收到请求之后,
    直接去调用保存好的sql命令就可以了。
    sql命令只需要写一次。
    select password from customer
    where username = ?;

    distinct关键字:
    作用:消除重复值。
    位置:放在select关键字后面
    例如:
    查询所有的部门名称?
    select name
    from s_dept;
    查询公司里有哪些种类的部门?
    select distinct name
    from s_dept;

    2.算数运算
    查询的过程中,可以对查询结果进行算数运算。
    并不是真正改变表中的数据值。

    1)数值类型运算
    包含 加减乘除
    + - * /
    例如:
    查询员工12个月的工资总和?
    select salary*12
    from s_emp;

    练习:
    每个员工月薪涨200元,
    年底还有500元的年终奖。
    一年给员工发14个月工资。
    查询所有员工一年的总收入?
    select (salary+200)*14+500
    from s_emp;

    2)日期类型运算
    只有加法和减法。
    加法代表从指定日期向未来数几天。
    减法代表从指定日期向过去数几天。

    练习:
    查询所有员工的入职时间的前三天?
    select start_date-3
    from s_emp;

    3.处理空值
    查询所有员工的id、提成?
    select id,commission_pct
    from s_emp;

    查询所有员工的id、工资+提成的总和?
    select id,salary+commission_pct
    from s_emp;

    处理空值:nvl函数
    语法:nvl(可能出现空值的字段,默认值)
    nvl(commission_pct,0)

    select id,salary+nvl(commission_pct,0)
    from s_emp;

    4.字符串拼接
    查询所有员工的全名?
    全名 = 姓 + 名
    first_name + last_name
    select first_name,last_name
    from s_emp;

    select first_name||last_name
    from s_emp;
    拼接字符串:使用||符号

    练习:
    查询所有员工的全名
    要求姓氏和名字之间使用"-"分割?
    select first_name||'-'||last_name
    from s_emp;

    concat函数
    concat(字符串1,字符串2)

    5.给查询结果取别名
    每一次select查询结果

    查询所有员工的12个月总收入?
    要求显示结果中的字段名为Year_Sal?
    select id,salary*12 Year_Sal
    from s_emp;

    四种方式:
    1)select 字段 别名 from s_emp;
    2)select 字段 as 别名 from s_emp;
    3)select 字段 "别名" from s_emp;
    4)select 字段 as "别名" from s_emp;

    第一种和第二种没区别。
    第一种和第三种的区别:
    查询结果的字段名默认全部都是大写。
    加了双引号就会按照字符串中的内容原样输出。
    SQL:select id,salary*12 "Year_Sal"
    from s_emp;

    6.设置会话中查询结果显示格式
    select first_name,last_name
    from s_emp;

    column
    可以简写为col

    语法:column/col 要修改的字段 format 格式;
    例如:把last_name显示结果修改为15个字符长?
    column last_name format a15;
    a:代表要处理的是字符类型 a只能处理字符类型
    15:代表要显示的长度

     

     

  • 相关阅读:
    [APM] OneAPM 云监控部署与试用体验
    Elastic Stack 安装
    xBIM 综合使用案例与 ASP.NET MVC 集成(一)
    JQuery DataTables Selected Row
    力导向图Demo
    WPF ViewModelLocator
    Syncfusion SfDataGrid 导出Excel
    HTML Table to Json
    .net core 2.0 虚拟目录下载 Android Apk 等文件
    在BootStrap的modal中使用Select2
  • 原文地址:https://www.cnblogs.com/DennySmith/p/12153535.html
Copyright © 2011-2022 走看看