從rowid操作相同記錄
/* 群裡的一個哥們問的問題,具體如下:
update a set bs='1' where x in(select x from a group by x having count(*)>1)
這個是給重複的資料都加賦值了1 我想留下重複中的一條不賦值,求高手指點
這個是給重複的資料都加賦值了1 我想留下重複中的一條不賦值,求高手指點
*/
SQL> select * from oraking;
ID NAME
---------- ----------
1 oraking
1 oraking
2 yallonking
2 yallonking
---------- ----------
1 oraking
1 oraking
2 yallonking
2 yallonking
SQL> select * from oraking where rowid in (select max(rowid) from oraking group by id,name);
ID NAME
---------- ----------
1 oraking
2 yallonking
---------- ----------
1 oraking
2 yallonking
SQL> update oraking set name='小龍真帥' where rowid in (select max(rowid) from oraking group by id,name);
2 rows updated.
SQL> commit;
Commit complete.
SQL> select * from oraking;
ID NAME
---------- ----------
1 oraking
1 小龍真帥
2 yallonking
2 小龍真帥
---------- ----------
1 oraking
1 小龍真帥
2 yallonking
2 小龍真帥
來自 “ ITPUB部落格 ” ,連結:http://blog.itpub.net/26143577/viewspace-719579/,如需轉載,請註明出處,否則將追究法律責任。
相關文章
- oracle實驗記錄 (dbms_rowid使用)Oracle
- PUTTY 記錄操作記錄
- oracle單條sql與plsql rowid插入記錄小記OracleSQL
- Xshell 5 記錄操作記錄
- 如何刪除oracle庫中相同的記錄Oracle
- MySQL防止重複插入相同記錄 insert if not existsMySql
- mongodb聚合操作記錄MongoDB
- 前端jquery操作記錄前端jQuery
- Mysql常用操作記錄MySql
- 個人誤操作記錄
- linux操作記錄Linux
- 查詢、刪除多個欄位相同的記錄
- php 操作 MongoBb 使用記錄PHPGo
- linux常用操作記錄Linux
- secureCRT記錄操作日誌Securecrt
- 記錄Linux操作命令Linux
- oracle日誌操作記錄Oracle
- 整理記錄 docker 基本操作使用Docker
- openssl版本升級操作記錄
- Appfuse:記錄操作日誌APP
- git相關操作,個人記錄Git
- 操作選中cell 所有cell操作相同情況下
- 測試2個oracle session會話同時相同記錄持鎖OracleSession會話
- Mycat讀寫分離、主從切換、分庫分表的操作記錄
- MySQL主從同步配置記錄MySql主從同步
- docker Linux 各種操作記錄DockerLinux
- 部落格域名更換操作記錄
- mysql之行(記錄)的詳細操作MySql
- JS錯誤記錄 – dom操作 – 排序JS排序
- MySQL的一些操作記錄MySql
- 記錄資料庫所有ddl操作資料庫
- 12.目錄操作(perl筆記)筆記
- MySQL資料庫查詢多個欄位值全部相同的記錄MySql資料庫
- 怎樣Oracle把多條記錄的相同欄位拼成一個字串Oracle字串
- 【ROWID】Oracle rowid說明Oracle
- cmdb 查詢資料庫操作記錄資料庫
- 如何優雅地記錄操作日誌?
- 如何優雅地記錄操作日誌