惯性聚合 高效追踪和阅读你感兴趣的博客、新闻、科技资讯
阅读原文 在惯性聚合中打开

推荐订阅源

J
Java Code Geeks
Last Week in AI
Last Week in AI
T
Tailwind CSS Blog
WordPress大学
WordPress大学
B
Blog RSS Feed
T
The Blog of Author Tim Ferriss
F
Fortinet All Blogs
aimingoo的专栏
aimingoo的专栏
MongoDB | Blog
MongoDB | Blog
博客园 - Franky
C
Check Point Blog
P
Proofpoint News Feed
H
Help Net Security
月光博客
月光博客
博客园_首页
Stack Overflow Blog
Stack Overflow Blog
博客园 - 三生石上(FineUI控件)
Martin Fowler
Martin Fowler
Recent Announcements
Recent Announcements
人人都是产品经理
人人都是产品经理
U
Unit 42
美团技术团队
I
InfoQ
A
About on SuperTechFans

博客园 - 简单男人!

rowid 删除重复记录!!! 十条“金玉良言” Oracle优化器(Optimizer)! ORACLE 纯粹行列转换!! oracle 行列统计转换!!! 鱼和水的故事!!! oracle日期函数2! oracle中case语句 动态SQL--灵活操作各种数据! 别人的语录! oracle优化,hint的使用! 几米语录 oracle的游标和例子! 几米经典语录! - 简单男人! - 博客园 oracle数据库导入导出命令! 如何完全卸载oracle linux系统下oracle计划任务脚本 oracle表的操作! Oracle 条件语句和循环语句的学习(1)
oracle数据库select的学习!
简单男人! · 2007-08-23 · via 博客园 - 简单男人!

select格式
SELECT [ ALL | DISTINCT ] <字段表达式1[,<字段表达式2[,…]
FROM <表名1>,<表名2>[,…]
[WHERE <筛选择条件表达式>]
[GROUP BY <分组表达式> [HAVING<分组条件表达式>]]
[ORDER BY <字段>[ASC | DESC]]

语句说明
[]方括号为可选项
[GROUP BY <分组表达式> [HAVING<分组条件表达式>]]
指将结果按<分组表达式>的值进行分组,该值相等的记录为一组,带【HAVING】
短语则只有满足指定条件的组才会输出。
[ORDER BY <字段>[ASC | DESC]]
显示结果要按<字段>值升序或降序进行排序

sql各子句的执行顺序:            

1. FROM
2. WHERE
3. GROUP BY
4. HAVING
5. SELECT
6. ORDER BY
 

练习:
1:表hkb_test_sore取出成绩sore前5名的记录,
2:取第5名的记录
1,答案select a.sore_id, a.sore
  from (select * from hkb_test_sore order by sore desc) a
 where rownum <=5


2,答案select a.sore_id, a.sore
  from (select * from hkb_test_sore order by sore desc) a
 where rownum <=5
 minus
select a.sore_id, a.sore
  from (select * from hkb_test_sore order by sore desc) a
 where rownum <=4;
3:查询两个分数一样的记录
select *
  from hkb_test_sore a
 where a.sore = (select sore
                   from hkb_test_sore a
                  group by a.sore
                 having count(a.sore) = 2);

union,union all,intersect,minus的区别:
SQL> select * from hkb_test2;
X        Y
---- -----
a        1
b        2
c        3
g        4

SQL> select * from hkb_test3; 
X        Y
---- -----
a        1
b        2
e        3
f        4
 
SQL> select * from hkb_test2;
X        Y
---- -----
a        1
b        2
c        3
g        4
 
SQL> select * from hkb_test3;
X        Y
---- -----
a        1
b        2
e        3
f        4
 
SQL> select * from hkb_test2
  2  union
  3  select * from hkb_test3;
X        Y
---- -----
a        1
b        2
c        3
e        3
f        4
g        4
 
6 rows selected
 
SQL> select * from hkb_test2
  2  union all
  3  select * from hkb_test3;
X        Y
---- -----
a        1
b        2
c        3
g        4
a        1
b        2
e        3
f        4
 
8 rows selected

SQL> select * from hkb_test2
  2  intersect
  3  select * from hkb_test3;
X        Y
---- -----
a        1
b        2
 
SQL> select * from hkb_test2
  2  minus
  3  select * from hkb_test3;
X        Y
---- -----
c        3
g        4


posted on 2007-08-23 16:18  简单男人!  阅读(7926)  评论()    收藏  举报