在oracle中,可以利用Distinct關鍵字來去掉重複的數據,過濾結果集中的重複行,該關鍵字可以確保在SELECT子句中返回指定的一列或多列的值是唯一的;語法為「SELECT DISTINCT 欄位名FROM 資料表名;」。
本教學操作環境:Windows7系統、Oracle 11g版、Dell G3電腦。
在oracle中,可以利用Distinct關鍵字來去掉重複的資料。
Oracle Distinct關鍵字
在SELECT
語句中使用DISTINCT
子句來篩選結果集中的重複行。它確保在SELECT
子句中傳回指定的一列或多列的值是唯一的。
以下說明了SELECT DISTINCT
語句的語法:
SELECT DISTINCT column_name FROM table_name;
在上面語法中,table_name
表格的column_name
列中的值將進行比較以過濾重複項。
要根據多列檢索唯一數據,只需要在SELECT
子句中指定列的列表,如下所示:
SELECT DISTINCT column_1, column_2, ... FROM table_name;
在此語法中,column_1
,column_2
和column_n
中的值的組合用於確定資料的唯一性。
DISTINCT
子句只能在SELECT
語句中使用。
請注意,DISTINCT
不是SQL標準的UNIQUE
的同義詞。總是使用DISTINCT
而不使用UNIQUE
是一個很好的習慣。
Oracle DISTINCT範例
下面來看看如何使用SELECT DISTINCT
來看看它是如何運作的一些例子。
1. Oracle DISTINCT在一列上應用的範例
檢視範例資料庫中的聯絡人(contacts
)表格:
以下範例檢索所有聯絡人的名字:
SELECT first_name FROM contacts ORDER BY first_name;
執行上面查詢語句,得到以下結果-
該查詢回傳了319
行,表示聯絡人(contacts
)表有319
行。
要取得唯一的聯絡人名字,可以將DISTINCT
關鍵字加入上面的SELECT
語句中,如下所示:
SELECT DISTINCT first_name FROM contacts ORDER BY first_name;
執行上面查詢語句,得到以下結果-
該查詢傳回了302
行,表示聯絡人(contacts
)表有17
行是重複的,它們已經被過濾了。
2. Oracle DISTINCT應用多列範例
看下面的order_items
表,表格的架構如下:
以下語句從order_items
表中選擇不同的產品ID和數量:
SELECT DISTINCT product_id, quantity FROM ORDER_ITEMS ORDER BY product_id;
執行上面查詢語句,得到以下結果-
在此範例中,product_id
和quantity
列的值都用於評估結果集中行的唯一性。
3. Oracle DISTINCT和NULL
DISTINCT
將NULL
值視為重複值。如果使用SELECT DISTINCT
語句從具有多個NULL
值的欄位中查詢數據,則結果集只包含一個NULL
。
請參閱範例資料庫中的locations
表,結構如下所示-
#以下語句從state
列中檢索具有多個NULL
值的資料:
SELECT DISTINCT state FROM locations ORDER BY state NULLS FIRST;
執行上面範例程式碼,得到以下結果-
正如上圖所看到的,只回傳一個NULL
值。
推薦教學:《Oracle教學》
以上是oracle如何去除重複的數據的詳細內容。更多資訊請關注PHP中文網其他相關文章!

oracle asm指的是“自动存储管理”,是一种卷管理器,可自动管理磁盘组并提供有效的数据冗余功能;它是做为单独的Oracle实例实施和部署。asm的优势:1、配置简单、可最大化推动数据库合并的存储资源利用;2、支持BIGFILE文件等。

方法:1、利用“select*from user_indexes where table_name=表名”语句查询表中索引;2、利用“select*from all_indexes where table_name=表名”语句查询所有索引。

在oracle中,可以利用“TO_SINGLE_BYTE(String)”将全角转换为半角;“TO_SINGLE_BYTE”函数可以将参数中所有多字节字符都替换为等价的单字节字符,只有当数据库字符集同时包含多字节和单字节字符的时候有效。

在Oracle中,可利用lsnrctl命令查询端口号,该命令是Oracle的监听命令;在启动、关闭或重启oracle监听器之前可使用该命令检查oracle监听器的状态,语法为“lsnrctl status”,结果PORT后的内容就是端口号。

在oracle中,可以利用“drop sequence sequence名”来删除sequence;sequence是自动增加数字序列的意思,也就是序列号,序列号自动增加不能重置,因此需要利用drop sequence语句来删除序列。

在oracle中,可以利用“select ... From all_tab_columns where table_name=upper('表名') AND owner=upper('数据库登录用户名');”语句查询数据库表的数据类型。

方法:1、利用“LOWER(字段值)”将字段转为小写,或者利用“UPPER(字段值)”将字段转为大写;2、利用“REGEXP_LIKE(字符串,正则表达式,'i')”,当参数设置为“i”时,说明进行匹配不区分大小写。

方法:1、利用“alter system set sessions=修改后的数值 scope=spfile”语句修改session参数;2、修改参数之后利用“shutdown immediate – startup”语句重启服务器即可生效。


熱AI工具

Undresser.AI Undress
人工智慧驅動的應用程序,用於創建逼真的裸體照片

AI Clothes Remover
用於從照片中去除衣服的線上人工智慧工具。

Undress AI Tool
免費脫衣圖片

Clothoff.io
AI脫衣器

AI Hentai Generator
免費產生 AI 無盡。

熱門文章

熱工具

MinGW - Minimalist GNU for Windows
這個專案正在遷移到osdn.net/projects/mingw的過程中,你可以繼續在那裡關注我們。 MinGW:GNU編譯器集合(GCC)的本機Windows移植版本,可自由分發的導入函式庫和用於建置本機Windows應用程式的頭檔;包括對MSVC執行時間的擴展,以支援C99功能。 MinGW的所有軟體都可以在64位元Windows平台上運作。

DVWA
Damn Vulnerable Web App (DVWA) 是一個PHP/MySQL的Web應用程序,非常容易受到攻擊。它的主要目標是成為安全專業人員在合法環境中測試自己的技能和工具的輔助工具,幫助Web開發人員更好地理解保護網路應用程式的過程,並幫助教師/學生在課堂環境中教授/學習Web應用程式安全性。 DVWA的目標是透過簡單直接的介面練習一些最常見的Web漏洞,難度各不相同。請注意,該軟體中

Safe Exam Browser
Safe Exam Browser是一個安全的瀏覽器環境,安全地進行線上考試。該軟體將任何電腦變成一個安全的工作站。它控制對任何實用工具的訪問,並防止學生使用未經授權的資源。

SAP NetWeaver Server Adapter for Eclipse
將Eclipse與SAP NetWeaver應用伺服器整合。

mPDF
mPDF是一個PHP庫,可以從UTF-8編碼的HTML產生PDF檔案。原作者Ian Back編寫mPDF以從他的網站上「即時」輸出PDF文件,並處理不同的語言。與原始腳本如HTML2FPDF相比,它的速度較慢,並且在使用Unicode字體時產生的檔案較大,但支援CSS樣式等,並進行了大量增強。支援幾乎所有語言,包括RTL(阿拉伯語和希伯來語)和CJK(中日韓)。支援嵌套的區塊級元素(如P、DIV),