distinct
group by(不能與order by一起使用,細節看執行計畫)
exists(某些地方推薦,資料越多越好用)
對下面這條語句去重,查詢資料多時優化,資料多不推薦
select 1 from a_r a
left join t_a_m b on a.id = b.pid
left join t_a_m c on a.id = c.pid
where a.status = '1' and ((b.tid = 55 and c.tid = 55) or (b.tid = 38 and c.tid = 38)) order by seq desc limit 9
select ar.id from a_r ar where exists (select 1 from a_r a
left join t_a_m b on a.id = b.pid
left join t_a_m c on a.id = c.pid
where a.status = '1' and ((b.tid = 55 and c.tid = 55) or (b.tid = 38 and c.tid = 38)) and a.id = ar.id) order by seq desc limit 9
union(不推薦使用 使用 union all)
mysql 去重的兩種方式
使用原則 1 distinct必須放在要查詢欄位的開頭,不能放在查詢欄位的中間或者後面 select distinct name from user 獲取不重名的name 記錄 select id,distinct name from user 這種寫法是錯誤的,distinct只能寫在所有查詢欄位...
mysql去重欄位 mysql多字段去重,並計數
問 題 mysql版本5.5.42 有兩個表,表結構與資料如下 1 goods表 create table goods id int 10 unsigned not null,product varchar 180 collate utf8mb4 unicode ci not null,size v...
陣列物件去重方式
在陣列中都是數字的時候很好去重,例如 var arr 1,2,2,2,3,4,5,4,5,3,6 可以用兩層for迴圈或者其他方式進行去重,在陣列中都是物件的時候就需要設定布林值來進行去重操作,原理也是兩層for迴圈,但是在第一層for迴圈內需要定義布林值為true,用來維持乙個量,之後在內層for...