zoukankan      html  css  js  c++  java
  • Oracle数据库之SQLselect之二

                         前面谈到了select的一些简单的运用,此次会更进一步的学习select查询。

            包括:where条件限定查询、范围查询、模糊查询、查询结果的排序.

                where条件限定查询

             select *from emp where emp.deptno = 10;--查询公寓号为10的所有员工
             select *from emp where job='CLERK';--注意CLERK是大小写敏感的
    

                     
                       我们知道Condition由列名表达式,常量和比较操作符组成,那么都有哪些比较操作符呢?

                                                                  常用比较操作符

                       

                         以上各个比较操作符就不一一尝试了!以后会遇到的。

            范围查询(Between and)

                      现实中我们有这种需求,需要查询一个数据段,这就可以使用between and实现了                      

               --查询工资在4000-8000的员工
                 select *from emp where sal between 4000 and 8000;

                         Tips:这里需要注意的是between 后面要先写低值后写高值,不然语句不会错

                           但是不可能查询到结果!

            模糊查询(Like 、Not Like)

                       like 模糊查询一般是针对字符匹配操作的。  字符匹配操作可以使用通配符 “%” 和 “_”:

                          %:表示任意个字符,包括零个;
                          _:表示一个任意字符;
                       简单例子:    
                select *from emp where ename like '_M%';--查询名字的第二个字符为"M"的员工
                        不过这里需要思考的是:如果我们需要查询的字符串中存在“%”、“-”之类的情况又如何呢?
                        解决办法: 使用escape
                     简单例子:                  
              insert into emp(Ename,Empno) VALUES('K%iritor',100);--人为的插入一条语句
              select *from emp where ename like 'K/%iritor' escape '/' ;
                   通过escape加上“/”转义字符(转义字符可以自己任意指定),将转义字符后面的字符
                           转义为原来的字符
    ,其中转义字符的指定和用户需要查询的字段的值有关。
                   至于not like就不做过多演示了!

            结果排序

                            ASC:升序排序,默认的。
                  select *from emp order by sal;
                           DESC:降序排序 
                  select *from emp order by sal;
    
                       以上都是针对单列进行排序如何针对多列进行排序呢?                     
                 --先对工资升序,若工资相同则对名字进行降序  
    
    select *from emp order by sal asc,ename desc;
    
    

           

                    就这样吧,至于上表中的一些比较操作符,日后会用到的!


  • 相关阅读:
    2
    spring jdbcTemplate 基本使用
    Day38-数据库入门学习
    DAY37-Python入门学习-进程池与线程池、协程、gevent模块
    Python入门学习-DAY36-GIL全局解释器锁、死锁现象与递归锁、信号量、Event事件、线程queue
    Python入门学习-DAY35-线程
    Python入门学习-DAY34-开启进程的两种方法、join方法、进程之间内存空间互相隔离、进程对象其他相关的属性或方法、僵尸进程与孤儿进程、守护进程、互斥锁
    Python入门学习-DAY33-基于UDP的套接字、socketserver模块、进程简单介绍
    Python入门学习-DAY32-链接循环与通信循环,粘包问题,远程控制,文件上传与下载
    Python入门学习-DAY31-三次握手原理与四次挥手,socket
  • 原文地址:https://www.cnblogs.com/javawebsoa/p/2992099.html
Copyright © 2011-2022 走看看