2014-01-06 53 views
3

我知道UNIQUE可以用於創建表格的唯一值。可以將UNIQUE關鍵字應用於子查詢嗎?

我在一個數據庫管理書上看到

當我們運用獨特的子查詢,如果沒有行的答案 子查詢是出現兩次的 產生的條件返回true,沒有重複;特別是,如果 答案爲空,則返回true。

我沒有看到任何類似的查詢,這可能嗎?

+0

您正在使用哪些關係數據庫管理系統,您想要實現什麼功能?你想知道查詢或子查詢返回的結果集是否包含重複記錄或其他內容? –

+0

@NicholasKrasnov我想知道,通過使用'distinct'而不是'unique'來回答問題,我可以實現預訂關於'unique'的解釋嗎? –

回答

3

UNIQUESQL92 8.9節定義:<unique predicate> ::= UNIQUE <table subquery>所以它肯定存在,但沒有得到廣泛廠商的支持。

作爲一種替代方案,您可以使用具有HAVING COUNT的EXISTS。

+0

我認爲你是對的。 [<唯一謂詞>]的解釋(https://www.mariadb.com/kb/en/unique-predicate/) –

1

UNIQUE約束通常用於定義基於表格的約束。

您應該考慮使用Select Distinct進行查詢。

以下鏈接提供有關UniqueDistinct關鍵字的詳細信息。

http://psoug.org/definition/DISTINCT.htm

+3

在Oracle中(假設它是Oracle,基於'plsql'標籤)'distinct'和'unique'是同義詞。 –

相關問題