Chinaunix首页 | 论坛 | 博客
  • 博客访问: 11949
  • 博文数量: 9
  • 博客积分: 0
  • 博客等级: 民兵
  • 技术积分: 90
  • 用 户 组: 普通用户
  • 注册时间: 2016-03-23 09:06
文章分类

全部博文(9)

文章存档

2016年(9)

我的朋友

分类: Oracle

2016-07-08 15:46:00

一、简单查询
SELECT [DISTINCT] * | 字段 [别名] [,字段 [别名]] FROM 表名称 [别名];
 
去重查询(所有的列都一样)
 
SELECT DISTINCT ename, job FROM emp;
 
四则运算查询

SELECT ename, job, (sal+300)*12+sal income FROM emp;

在简单查询中也可以使用“||”连接查询的字段

SELECT empno || ',' || ename FROM emp;

二、条件查询
在WHERE子句之后可以增加多个条件,最常见的条件就是基本的关系运算:>、>=、<、<=、!=(<>)、BETWEEN、AND、LIKE、IN、IS NULL、AND、OR、NOT;
 
查询工资在1500~3000之间的全部雇员信息
 
SELECT * FROM emp WHERE sal>=1500 AND sal<=3000;
查询出职位是办事员,或者是销售人员的全部信息,并且要求这些雇员的工资大于1200 
SELECT * FROM emp WHERE (job='CLERK' OR job='SALESMAN') AND sal>1200;

要求查询出基本工资在1500~3000的雇员信息

SELECT * FROM emp WHERE sal BETWEEN 1500 AND 3000;
SELECT * FROM emp WHERE NOT sal BETWEEN 1500 AND 3000;

查询出雇员编号是7369、7566、7799的雇员信息
 
SELECT * FROM emp WHERE empno=7369 OR empno=7566 OR empno=7799;
SELECT * FROM emp WHERE empno IN (7369,7566,7799);
模糊查询:LIKE子句
匹配单个字符:_;             ->  1个
匹配任意多个字符:%;      ->  0个、1个、多个
要求查询出雇员姓名中第二个字母是A的全部雇员信息
 
SELECT * FROM emp WHERE ename LIKE '_A%';

“ORDER BY”子句是写在所有的SQL语句最后的内容,而且对于排序有以下几点说明:
排序的时候可以指定多个排序的字段;排序的方式有两种:
升序(ASC):默认,不写也是升序;
降序(DESC):用户需要指定,由大到小排序;

要求查询出所有的雇员信息,按照工资由高到低排序,如果工资相同,则按照雇佣日期由早到晚排序
SELECT * FROM emp ORDER BY sal DESC, hiredate ASC;

阅读(374) | 评论(0) | 转发(0) |
0

上一篇:MySQL当前状态监控脚本

下一篇:没有了

给主人留下些什么吧!~~