mysql查詢重複資料取其中一條

2021-04-26 06:22:25 字數 3623 閱讀 1946

1樓:胃疼

資料select a.* from t1 as a where i_time = (select max(i_time) from t1 where a.number=number)

查詢結果

在mysql資料庫中如何讓某個欄位有重複的只取一條

2樓:魚尾摯愛白菜

select *

from table  ###

where not exists (

select * from table  ###where # = #

and ## < ##

)在使用mysql時,有時需要查詢出某個欄位不重複的記錄,雖然mysql提供 有distinct這個關鍵字來過濾掉多餘的重複記錄只保留一條,但往往只用它來返回不重複記錄的條數,而不是用它來返回不重記錄的所有值。其原因是 distinct只能返回它的目標欄位,而無法返回其它欄位,這個問題讓我困擾了很久,用distinct不能解決的話,只有用二重迴圈查詢來解決。

給個例子把,比如:表table_a 4條資料id a b c d

01 ab 1a2 1b2 121

02 ab 2a3 3b3 4a1

03 ac 1a2 1b2 121

04 ac 2a4 3b2 52g

何讓a欄位重複取條 比

01 ab 1a2 1b2 121

03 ac 1a2 1b2 121

保留相同a值id行

select *

from table_a a

where not exists (

select 1 from table_a bwhere b.a = a.a

and b.id < a.id)

3樓:匿名使用者

select max(id) as id,fid,title,date from table group by fid,title,date

4樓:尋_常

select * from (select * from a order by id desc) as b group by fid

mysql查詢結果中有多條重複記錄只保留一條

5樓:匿名使用者

這個需要分情況。 1,你的資料庫表中有主鍵,且主鍵上面的資料為唯一值。也就是沒有重複值。 那麼你在刪除的時候,將這個唯一值作為條件進行刪除。

6樓:匿名使用者

如果是完全重複的話可以用distinct關鍵字去重。

mysql 查詢出重複資料 然後把刪除重複的資料 保留最新的一條 5

7樓:

delete from mygame_articlewhere id not in ( select max(id)from mygame_article

group by title);

sql根據某一個欄位重複只取第一條資料

8樓:

使用分析函式row_number() over (partiion by ... order by ...)來進行分組編號,然後取分組標號值為1的記錄即可。

目前主流的資料庫都有支援分析函式,很好用。

其中,partition by 是指定按哪些欄位進行分組,這些欄位值相同的記錄將在一起編號;order by則是指定在同一組中進行編號時是按照怎樣的順序。

示例(sql server 2005或以上適用):

select s.*

from (

select *, row_number() over (partition by [手機號] order by [店鋪]) as group_idx

from table_name

) swhere s.group_idx = 1

9樓:匿名使用者

用group by 最後一個欄位 用個max()

10樓:發生等將發生

如果僅僅只是查詢出來去從,那麼就用distinctselect distinct 需要去重的列明(允許多列) from table

如果是需要在表中刪除,可以這樣處理

1、建立臨時表,將重複記錄查詢出來去重插入到臨時表2、刪除實表中的重複記錄

3、將臨時表中的記錄插入到實表

處理完成

11樓:匿名使用者

select * into ##tmp_table from 表where 1=2

declare @phoneno int

declare cur cursor forselect 手機號 from 表 group by 手機號open cur

fetch next from cur into @phonenowhile @@fetch_status=0begin

insert into ##tmp_tableselect top 1 from 表 where 手機號=@phoneno

fetch next from cur into @phonenoendselect * from ##tmp_tabledrop table ##tmp_table

12樓:匿名使用者

最簡單的 select distinct (手機號)

13樓:老漢肆

select

temp.id,

temp.device_id,

temp.update_dtm,

temp.test_result

from (

select

t.id,

t.device_id,

t.update_dtm,

t.test_result,

row_number() over(partition by device_id order by t.update_dtm desc) as row_***

from device_info_tbl t ) tempwhere temp.row_*** = '1'

mysql查詢結果中,有多條不同資料但其中多個欄位值會相同的記錄想取其中最新那條,看**

14樓:oo剛仔

select max(id),elec_id,model_info_id from 表 group by elec_id,model_info_id

15樓:喬克叔叔嗨

可能寫的有點複雜,但是結果應該是沒問題的,自己也剛好需要查這種情況的資料

select * from

(select elec_id,model_info_id,max(add_date) add_date from 主表 group by

elec_id,model_info_id) t1left join

主表 t2

on t1.elec_id=t2.elec_id and t1.model_info_id=t2.model_info_id and t1.add_date=

t2.add_date;

怎樣用vlookup查詢重複資料

首先,為了更好的講解使用vlookup函式查詢重複項,我先虛構兩列資料 資料1 資料2。需求 我需要知道資料2與資料1重複的資料有哪些以及那些資料存在資料2中,而在資料1中不含有。首先明白vlookup匹配函式的意義及使用公式。公式 vlookup 查詢值,查詢區域,返回值在查詢區域 列 序號,0 ...

mysql查詢結果中,有多條不同資料但其中多個欄位值會相同的

select max id elec id,model info id from 表 group by elec id,model info id 可能寫的有點複雜,但是結果應該是沒問題的,自己也剛好需要查這種情況的資料 select from select elec id,model info i...

MySQL中查詢多欄位中某一段不重複的值,該如何查詢

header content type text html charset utf 8 arr array array week 星期一 array week 星期二 array week 星期三 array week 星期四 array week 星期一 echo mun count arr fo...