有这样一个表TABLE
就是要取出ABCD这四列
ABCD组合起来肯定是惟一的
但是 ABC相同情况下 只需要取出最大D的这一行数据就好
例如:
对于 ABCD ----------------------------------------------------------
| A | B | C | D | | | |
----------------------------------------------------------
| 11 | 22 | 33 | 11 | | | |
----------------------------------------------------------
| 11 | 22 | 33 | 22 | | | |
----------------------------------------------------------
| 11 | 22 | 33 | 33 | | | |
----------------------------------------------------------
只需要取出
| 11 | 22 | 33 | 33 | | | |就好
对于下面这个----------------------------------------------------------
| A | B | C | D | | | |
----------------------------------------------------------
| 11 | 22 | 33 | 11 | | | |
----------------------------------------------------------
| 11 | 22 | 33 | 22 | | | |
----------------------------------------------------------
| 11 | 22 | 33 | 33 | | | |
----------------------------------------------------------
| 22 | 22 | 33 | 11 | | | |
----------------------------------------------------------
| 22 | 22 | 33 | 22 | | | |
----------------------------------------------------------
| 33 | 22 | 33 | 11 | | | |
----------------------------------------------------------
| 33 | 22 | 33 | 22 | | | |
----------------------------------------------------------
| 44 | 22 | 33 | 11 | | | |
----------------------------------------------------------
| 44 | 22 | 33 | 22 | | | |
----------------------------------------------------------
| 55 | 22 | 33 | 11 | | | |
----------------------------------------------------------
需要取出
| 11 | 22 | 33 | 33 | | | |
----------------------------------------------------------
| 22 | 22 | 33 | 22 | | | |
----------------------------------------------------------
| 33 | 22 | 33 | 22 | | | |
----------------------------------------------------------
| 44 | 22 | 33 | 22 | | | |
----------------------------------------------------------
| 55 | 22 | 33 | 11 | | | |
----------------------------------------------------------请帮忙写下这个SQL语句
运行ok的话马上结贴给分!
多谢!!!SQL语句
就是要取出ABCD这四列
ABCD组合起来肯定是惟一的
但是 ABC相同情况下 只需要取出最大D的这一行数据就好
例如:
对于 ABCD ----------------------------------------------------------
| A | B | C | D | | | |
----------------------------------------------------------
| 11 | 22 | 33 | 11 | | | |
----------------------------------------------------------
| 11 | 22 | 33 | 22 | | | |
----------------------------------------------------------
| 11 | 22 | 33 | 33 | | | |
----------------------------------------------------------
只需要取出
| 11 | 22 | 33 | 33 | | | |就好
对于下面这个----------------------------------------------------------
| A | B | C | D | | | |
----------------------------------------------------------
| 11 | 22 | 33 | 11 | | | |
----------------------------------------------------------
| 11 | 22 | 33 | 22 | | | |
----------------------------------------------------------
| 11 | 22 | 33 | 33 | | | |
----------------------------------------------------------
| 22 | 22 | 33 | 11 | | | |
----------------------------------------------------------
| 22 | 22 | 33 | 22 | | | |
----------------------------------------------------------
| 33 | 22 | 33 | 11 | | | |
----------------------------------------------------------
| 33 | 22 | 33 | 22 | | | |
----------------------------------------------------------
| 44 | 22 | 33 | 11 | | | |
----------------------------------------------------------
| 44 | 22 | 33 | 22 | | | |
----------------------------------------------------------
| 55 | 22 | 33 | 11 | | | |
----------------------------------------------------------
需要取出
| 11 | 22 | 33 | 33 | | | |
----------------------------------------------------------
| 22 | 22 | 33 | 22 | | | |
----------------------------------------------------------
| 33 | 22 | 33 | 22 | | | |
----------------------------------------------------------
| 44 | 22 | 33 | 22 | | | |
----------------------------------------------------------
| 55 | 22 | 33 | 11 | | | |
----------------------------------------------------------请帮忙写下这个SQL语句
运行ok的话马上结贴给分!
多谢!!!SQL语句
解决方案 »
- select sysdate from dual;
- (面试题)一个数据库方面的题目
- Oracle10 急救问题
- oracle如何实现如同mysql建表时的自动+1的功能
- 如何执行一段动态的SQL语句,可返回结果集
- oracle 存储过程怎么样返回多个值,如一个boolean类型和一个数据集?
- 初学oracle,有个挺简单的存储过程(书上的例子),麻烦朋友们帮忙给说道说道,谢谢!!!
- 有3个字符型字段,想通过select语句将3个字段的值连接起来作为结果,该怎么写
- 请教:关于在linux上安装oracle设置环境变量的问题
- exp imp 的问题!!!!
- 这个sql语句该怎么写?!!!
- 动态查询的问题
SQL> select * from test; S1 S2 S3 S4
---------- ---------- ---------- ----------
11 22 33 11
11 22 33 22
11 22 33 33
11 22 33 44
111 222 333 111
111 222 333 222
111 222 333 333
111 222 333 444
1111 2222 3333 1111
1111 2222 3333 4444
1111 2222 3333 222211 rows selected.SQL> select * from test where rowid in (select max(rowid) from test group by s1 || s2 || s3); S1 S2 S3 S4
---------- ---------- ---------- ----------
111 222 333 444
1111 2222 3333 2222
11 22 33 44SQL>
是需要取出ABCDE的要求依然是一样例如:
对于 ABCDE ----------------------------------------------------------
| A | B | C | D | E | | |
----------------------------------------------------------
| 11 | 22 | 33 | 11 | as | | |
----------------------------------------------------------
| 11 | 22 | 33 | 22 | sa | | |
----------------------------------------------------------
| 11 | 22 | 33 | 33 | ad | | |
----------------------------------------------------------
只需要取出
| 11 | 22 | 33 | 33 | ad | | |就好
如果增加了E列
用max(rowid)还依然有效么?
会不会D和E一起组合起来 找最大的?