如何在SQL中去重某一列的重複值顯示所有的資料

2021-08-17 17:32:13 字數 640 閱讀 3059

現有一張表如上:content列有乙個重複的資料,我想去掉一條(不考慮其他列),顯示成下面的結果

select * from t_xf_care_education where id in (select min(id) from t_xf_care_education group by content);
格式:

查詢不重複列:

select * from 表名 where 列1 in (select min(列1) from 表名 group by 列3)
其中 列1最好是不會重複的主鍵(自增,型別int,bigint等)。

如果是uuid生成方式生成的主鍵,我們考慮其他實現方式,或尋找別列。

刪除重複資料:(慎用)

delete 表名 where 列1 not in (select min(列1) from 表名 group by 列3)

shell指令碼根據某一列去重

sort t t k3 u filenamesort 排序命令 t 指定分隔符為 t k 指定第三列 u 去重 sort的其他一些選項 r 降序排列 o 把排序結果輸出到原始檔 sort預設是把結果輸出到標準輸出,所以需要用重定向才能將結果寫入檔案,形如 sort filename newfile ...

sql如何實現某一列按照特定順序排序

之前乙隻以為sql的功能有限只能進行公升序和降序的字典排序法,經常是確定了時間排序的基礎上,再將sql查詢的結果放到 裡重新遍歷排序,這真是個又累又痛苦的過程想想都不相干,很小的功能,實現起來卻很麻煩。偶爾發現了這麼乙個方法確實是豁然開朗。一張包含申請單位,開始時間,序號的計畫申請表,按照時間 地域...

SQLSERVER去除某一列的重複值並顯示所有資料

進入正題,準備我們的測試資料 1.我們要篩選的資料為去除 gx 列的重複項 並將所有資料展示出來,如圖所示 2.這種情況下我們是不可以使用distinct來去重的,我們可以來嘗試一下 首先,單純的查詢 gx 這一列用 distinct 是沒有任何問題的 但是如果我們加上表中其它資料的話,我們來看看效...