sql serverselect,oracle数据库select语句

  sql serverselect,oracle数据库select语句

  谈了select的一些简单应用,这次我将进一步研究select查询。

  包括:条件查询、范围查询、模糊查询和查询结果排序。

  where条件查询select * from EMP where EMPdeptno=10-查询公寓号为10的所有员工。

  select * from EMP where job= CLERK ;-注意,CLERK区分大小写。

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

  公共比较运算符

  以上比较运算符就不一一尝试了!我们过会儿见面。

  查询(在和之间)

  现实中我们有这个需求,我们需要查询一个数据段,可以用between和来实现。

  -查询工资4000-8000的员工。

  select *from emp where sal介于4000和8000之间;

  温馨提示:这里需要注意的是,between后面应该是一个低值,然后是一个高值,否则语句不会错。

  但是查询结果是不可能的!

  模糊查询(喜欢,不喜欢)

  像这样的模糊查询通常针对字符匹配操作。通配符“%”和“_”可用于字符匹配操作:

  %:表示任何字符,包括零;

  _:表示任意字符;

  简单的例子:

  select * from EMP where ename like _ M % ;-查询第二个字符是“m”的雇员

  但下面是我们需要思考的:如果我们需要查询的字符串中有“%”和“-”怎么办?

  解决方案:

  使用转义

  简单的例子:

  插入emp(埃纳姆,Empno)值( K%iritor ,100);——人为插入一个语句。

  select * from EMP where name like K/% iritor escape /;

  用“/”转义字符(转义字符可以任意指定)将转义字符后的字符。

  转义是原始字符,其中转义字符的指定与用户需要查询的字段的值有关。

  至于不喜欢,我就不做过多的论证了!

  结果排序

  ASC:升序排序,默认。

  select * from emp order by sal

  DESC:降序排序select * from emp order by sal

  以上所有内容都是针对单个列进行排序的。如何对多列进行排序?

  -第一,工资是升序,如果工资不变,名字是降序。

  select *from emp order by sal asc,ename desc;

  就是这样。至于上表中的一些比较运算符,以后会用到!

sql serverselect,oracle数据库select语句