有这样一个表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语句
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一起组合起来 找最大的?