MySQL關鍵字Distinct的詳細介紹

2022-09-29 05:21:13 字數 1314 閱讀 8502

mysql關鍵字distinct用法介紹

ddlprepare sql:

create table test(id bigint not null primary key auto_increment,

name varchar(10) not null,

phone varchar(10) not null,

email varchar(30) not null)engine=innodb;

prepare data:

insert into test(name, phone, email)values('alibabwww.cppcns.coma','0517','[email protected]');

insert into test(name, phone, email)va程式設計客棧lues('alibaba','0517','a程式設計客棧libaba@alibab程式設計客棧a.com');

查詢資料如下圖所示:

第一種情況,使用distinct關鍵字,查詢單列資料,如下圖所示:

結果:對 name 字段進行去重處理,符合預期期望,確實篩選掉了重複的字段值alibaba;

第二種情況,使用distinct關鍵字(在前),查詢多列資料,如下圖所示:

結果:對 name 字段進行去重處理,結果不符合預期期望,沒有篩選掉重複的字段值alibaba;

第二種情況,使用distinct關鍵字(在後),查詢多列資料,如下圖所示:

結果:對 name 字段進行去重處理,結果不符合預期期望,丟擲sql異常,錯誤碼:1064;

解決辦法:

不要用子查詢,用分組來解決:

總結: sql查詢能用一條語句解決的盡量不要增加sql的複雜度,特別是子查詢!!!

new關鍵字 this關鍵字 base關鍵字

使用new,所做的三件事 1.類是引用物件,引用物件是在堆中開闢空間 在堆中開闢空間 2.在開闢的堆空間中建立物件 3.呼叫物件的構建函式 4.隱藏父類成員 子類的成員可以與隱藏從父類繼承的成員,類似於重寫。public new void sayhello this關鍵字的使用 1.代表當前類的物件...

MySQL常用關鍵字

1.in 關鍵字 in關鍵字,用於判斷某個欄位的值,是否在指定的集合中 如果欄位的值在集合中,則滿足條件,該欄位所在的資料將會被查詢出來。語法格式 select from 表名 where 欄位名 not in 元素1,元素2,引數說明 元素1,元素2,表示集合中的元素,即指定的條件範圍 注 這裡也...

this關鍵字 static關鍵字

1.當成員變數和區域性變數重名,可以用關鍵字this來區分 this 代表物件,代表那個物件呢?當前物件 this就是所在函式所屬物件的引用 簡單說 那個物件呼叫了this所在的函式,this就代表哪個物件 this也可以用於在建構函式中呼叫其他建構函式 注意 只能定義在建構函式的第一行,因為初始化...