(6)Oracle基础--简单查询

本文详细介绍SQL的基本查询语句,包括如何进行简单的数据检索、给字段设置别名、使用各种运算符进行条件筛选、模糊查询、范围查询以及结果排序等。通过实例讲解帮助读者快速掌握SQL查询技巧。

.基本查询语句

   SELECT [DISTINCT] column_name1,... | *

  FROM table_name 

  [WHERE conditions];

  P: DISTINCT关键字的作用是过滤掉重复的记录.

.查询表中所有字段及指定字段

  <1> 查询表中所有字段

     SELECT * FROM table_name;

   <2> 查询指定字段

     SELECT column_name1,column_name2... FROM table_name;

.给字段设置别名

  <1> 使用空格设置别名

     SELECT column_name new_column_name FROM table_name;

   <2> 使用 AS 设置别名

     SELECT column_name  AS new_column_name FROM table_name;

    (注意: 给字段设置别名并不能改变字段的名字,只是查询结果的显示名)

.运算符和表达式

  表达式 = 运算符 + 操作数

  运算符分类:

  <1> 算数运算符  +, -, *, /

  <2> 比较运算符  >, >=, <, <=, <>

  <3> 逻辑运算符  and, or, not

.带条件的查询  

  SELECT column_name1,column_name2 ... FROM table_name WHERE EXPRESSIONS;  

.模糊查询

   <1> 通配符的使用(_,%)

     ① 一个_代表一个字符

     ② %可以代表0到多个任意字符   

  <2> 使用语法  

       SELECT column_name1,column_name2 ... FROM table_name WHERE column_name LIKE  'string';

.范围查询

   <1> 使用多个表达式

     SELECT column_name1,column_name2 ... FROM table_name

       WHERE column_name > value1 AND column_name < value2;

    <2> 使用 BETWEEN ... AND 

     SELECT column_name1,column_name2 ... FROM table_name

 

      WHERE column_name BETWEEN value1 AND value2;

 

    <3> 使用 IN / NOT IN

      SELECT column_name1,column_name2 ... FROM table_name

      WHERE column_name IN | NOT IN (value1,value2, ...);

  <4> 使用 EXISTS / NOT EXISTS

     SELECT column_name1,column_name2 ... FROM table_name

     WHERE EXISTS | NOT EXISTS (select_expression);

    P: IN 与 EXISTS的区别

     1. IN 后面的集合包含IN前面的值就返回真, EXISTS 后面的结果集不为空即返回真.

     2. IN 引导的字句只能返回一个字段,而 EXISTS 引导的字句可以返回多个

 

.对查询结果排序

    SELECT column_name1,column_name2... FROM table_name 

  [WHERE conditions] ORDER BY column1 DESC/ASC,column2 DESC/ASC .... ;

  P:  1. DESC 表示降序,ASC 表示升序;

    2. 对多个字段排序时优先级按先后次序递减.

.CASE ... WHEN语句的使用

  作用: 可以根据查询结果中字段的不同的值返回不同的结果

  <1> 第一种形式

    SELECT CASE column_name WHEN value1 THEN result1 ... [ELSE result] END FROM table_name;

  <2> 第二种形式

    SELECT CASE WHEN column_name operator value1 THEN result1 ... [ELSE result] END FROM table_name;

    P: operator为操作符,如+ - * / > < 等

.decode函数的使用

  decode函数与case when的第一种形式比较类似

  SELECT DECODE(column_name,value1,result1,...,DEFAULT value) FROM table_name;

  P: 不指定默认值的情况下,如果没有匹配的值,则返回NULL.

作者: caobotao
本文版权归作者和博客园共有,欢迎转载,但未经作者同意必须保留此段声明,且在文章页面明显位置给出原文链接,否则保留追究法律责任的权利。

转载于:https://www.cnblogs.com/caobotao/p/4965832.html

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值