sql資料庫去重語法 SQL如何去重?

2021-10-12 15:08:38 字數 1037 閱讀 8595

展開全部

1、首先建立乙個臨時表,用於演示sqlserver語法中的去重關鍵字distinct的使用。本文以sqlserver資料庫為例演示,62616964757a686964616fe4b893e5b19e31333431373232

if object_id('tempdb..#tmp1') is not null drop table #tmp1;

create table #tmp1(

col1 varchar(50),

col2 int

2、往臨時表中插入幾行測試資料,用於演示distinct的使用

insert into #tmp1(col1, col2) values('code10', 10);

insert into #tmp1(col1, col2) values('code20', 20);

insert into #tmp1(col1, col2) values('code10', 10);

insert into #tmp1(col1, col2) values('code5', 20);

3、查詢臨時表中所有的測試資料select * from #tmp1;

4、使用distinct查詢出整個表所有字段值不重複的記錄,select distinct * from #tmp1 。

5、distinct除了過濾整個表不重複的記錄之外,還可以對指定列去重複,多個列使用逗號分開即可

select distinct col1 from #tmp1;

select distinct col1, col2 from #tmp1;

6、如果想返回臨時表中col1列不重複的記錄行數,該如何書寫sql語句呢?使用下面的sql,從執行結果來看,並沒有達到預期的效果

select distinct count(col1) from #tmp1;

7、試著把distinct和count交換乙個位置,從執行結果可以看出,這樣寫就可以達到預期的效果,col1列的不重複行數正確地返回了。

select count(distinct col1) from #tmp1;

資料庫去重保留ID最小值SQL語法

近期在往遠端資料庫插入大量資料的時候遇到乙個小坑,但是面對千萬級別的大資料來說就是大坑了 藉以此文記錄處理過程,以便後期再遇到方可解愁 我插入資料的格式是以大量的 insert into 的語句,處理前沒有考慮到重複的問題導致才出現需要去重的尷尬動作.在這裡提供幾個思路 一 首先是如網上所說可以直接...

資料庫 SQL語法一

建立表語句 create table tablename col name1 type,col name2 type,常用type說明 int 正數 char length 定長字串,短於指定長度用空格填充 varchar length 變長字串 刪除表語句 drop table tablename...

資料庫及SQL語法

常見資料庫 1 oracle database 甲骨文公司 2 sqlserver 微軟 3 db2 ibm公司 4 postgresql 開源 5 mysql 開源 滲透測試常用函式 gpoup concat col 返回由屬於一組的列值連線而成的結果 ascii char 返回字元的ascll碼...