在Oracle中更改文本时更改rownum的SQL查询
我被一个查询卡住了,在这个查询中,我需要将rownum或任何正在运行的序列号更改为原始值,只要它发现第二列的文本发生了更改。 我正在使用Oracle 11g 例如,我的数据是在Oracle中更改文本时更改rownum的SQL查询,sql,oracle,select,oracle11g,Sql,Oracle,Select,Oracle11g,我被一个查询卡住了,在这个查询中,我需要将rownum或任何正在运行的序列号更改为原始值,只要它发现第二列的文本发生了更改。 我正在使用Oracle 11g 例如,我的数据是 ________ | EMP_CD | |--------| | D123 | |--------| | D123 | |--------| | D123 | |--------| | F743 | |--------|
________
| EMP_CD |
|--------|
| D123 |
|--------|
| D123 |
|--------|
| D123 |
|--------|
| F743 |
|--------|
| F743 |
|________|
所以现在我期待的是
_______ ________
| SR NO | EMP_CD |
|-------|--------|
| 1 | D123 |
|-------|--------|
| 2 | D123 |
|-------|--------|
| 3 | D123 |
|-------|--------|
| 1 | F743 |
|-------|--------|
| 2 | F743 |
|_______|________|
您可以使用分析功能:
SELECT ROW_NUMBER() OVER (PARTITION BY emp_cd ORDER BY 1) AS sr_no, emp_cd
FROM mytable
您可以使用分析功能:
SELECT ROW_NUMBER() OVER (PARTITION BY emp_cd ORDER BY 1) AS sr_no, emp_cd
FROM mytable
订购方式是可选的
订购依据是可选的。您可以使用
行号()
分析功能您可以使用行号()
分析功能谢谢@Mureinik!得到了我想要的。谢谢@Mureinik!得到了我想要的。非常感谢@mathguy非常感谢@mathguy