關係模型不允許出現重複元祖。實際dbms中卻有可能出現重複的資料。
在table中要求無重複資料是通過
primary key
或者unique
來保證的,而在查詢結果中要保證無重複資料則是通過
distinct
實現的。
示例:1 在選課表中查詢成績大於
80分的學號;
select
student_id
from
student_course
where
score > 80;
執行結果:
結果中包含重複資料,若要去掉重複資料,需要使用distinct
select distinct
student_id
from
student_course
where
score > 80;
執行結果:
資料庫的唯一索引
唯一索引是不允許表中任何兩行具有相同索引值的索引。當現有的資料中存在重複的鍵值時,大多數資料庫不允許把新建立的唯一索引與表一起儲存。資料庫還可能防止新增將在表中建立重複鍵值的新資料。主鍵索引資料庫表經常有一列或列組合,其值唯一標識表中的每一行。該列稱為表的主鍵。在資料庫關係圖中為表定義主鍵將自動建立...
資料庫MySQL之as和distinct關鍵字
在使用sql語句顯示結果的時候,往往在螢幕顯示的欄位名並不具備良好的可讀性,此時可以使用 as 給字段起乙個別名。使用 as 給字段起別名 select id as 序號,name as 名字,gender as 性別 from students 可以把as省略不寫 可以通過 as 給表起別名 如果...
mysql 唯一鍵 MySQL資料庫8(十)唯一鍵
唯一鍵 唯一鍵 unique key,用來保證對應的字段中的資料唯一的。主鍵也可以用保證字段資料唯一性,但是一張表只有乙個主鍵。唯一鍵特點 1 唯一鍵在一張表中可以有多個。2 唯一鍵允許字段資料為null,null可以有多個 null不參與比較 建立唯一鍵 建立唯一鍵和建立主鍵非常類似 1 直接在表...