<p>I'm looking for an UPDATE statement where it will update a single duplicate row only and remain the rest (duplicate rows) intact 
as is, using ROWID or something else or other elements to utilize in Oracle SQL or PL/SQL?</p>

<p>Here is an example duptest table to work with:</p>

<pre><code>CREATE TABLE duptest (ID VARCHAR2(5), NONID VARCHAR2(5));
</code></pre>

<ul>
<li><p>run one <code>INSERT INTO duptest VALUES('1','a');</code> </p></li>
<li><p>run four (4) times <code>INSERT INTO duptest VALUES('2','b');</code> </p></li>
</ul>

<p>Also, the first duplicate row has to be updated (not deleted), always, whereas the other three (3) have to be remained as is!</p>

<p>Thanks a lot,
Val.</p>

Will this work for you:
```
```
update duptest 
set nonid = 'c'
WHERE ROWID IN (SELECT   MIN (ROWID)
                              FROM duptest 
                          GROUP BY id, nonid)
```
```