-
當(dāng)前位置:首頁 > 創(chuàng)意學(xué)院 > 技術(shù) > 專題列表 > 正文
url去重
大家好!今天讓創(chuàng)意嶺的小編來大家介紹下關(guān)于url去重的問題,以下是小編對(duì)此問題的歸納整理,讓我們一起來看看吧。
開始之前先推薦一個(gè)非常厲害的Ai人工智能工具,一鍵生成原創(chuàng)文章、方案、文案、工作計(jì)劃、工作報(bào)告、論文、代碼、作文、做題和對(duì)話答疑等等
只需要輸入關(guān)鍵詞,就能返回你想要的內(nèi)容,越精準(zhǔn),寫出的就越詳細(xì),有微信小程序端、在線網(wǎng)頁版、PC客戶端
官網(wǎng):https://ai.de1919.com。
創(chuàng)意嶺作為行業(yè)內(nèi)優(yōu)秀的企業(yè),服務(wù)客戶遍布全球各地,如需了解相關(guān)業(yè)務(wù)請(qǐng)撥打電話175-8598-2043,或添加微信:1454722008
本文目錄:
一、sql統(tǒng)計(jì)行數(shù),但是需要去重中間的重復(fù)數(shù)據(jù)
userId: user id
url: url visited by the user
SELECT userId, COUNT(DISTINCT url)
FROM tab
GROUP BY userId
ORDER BY COUNT(DISTINCT url) DESC
擴(kuò)展資料:
group by 解決重復(fù)數(shù)據(jù)的個(gè)數(shù)統(tǒng)計(jì)適用于各種關(guān)系型數(shù)據(jù)庫,如oracle,SQL Server
查詢重復(fù)的數(shù)據(jù)
select * from (select v.xh,count(v.xh) num from sms.vehicle v group by v.xh) where num>1;
select v.xh,count(v.xh) num from sms.vehicle v group by v.xh having count(v.xh)=2;
刪除重復(fù)的數(shù)據(jù)
create table mayong as (select distinct* from sms.vehicle);
delete from sms.vehicle ;
insert into sms.vehicle select * from mayong;
在oracle中,有個(gè)隱藏了自動(dòng)rowid,里面給每條記錄一個(gè)唯一的rowid,如果想保留最新的一條記錄,就可以利用這個(gè)字段,保留重復(fù)數(shù)據(jù)中rowid最大的一條記錄就可以了。
下面是查詢重復(fù)數(shù)據(jù)的一個(gè)例子:
select a.rowid,a.* from 表名 a
where a.rowid != (select max(b.rowid) from 表名 b where a.字段1 = b.字段1 and a.字段2 = b.字段2 )
二、如何用redis去重
$key
=
'URL_HASH';
if(!$redis->hGet($key,
md5
($url))){
//
do
something
...
//
抓取一個(gè)
$url
后
$redis->hSet($key,
md5($url),
true);
}這里需要注意的是,如果是多線程的,要考慮其他進(jìn)程,可以吧
bool
值改為枚舉值。
三、請(qǐng)問sql高手distinct如何查詢多條字段
你是說urlchoose有重復(fù)的,然后你想查urlchoose沒有重復(fù)的,是這個(gè)意思吧。
我舉個(gè)例子你就明白了。
urlchoose id content
aaa 1 111
aaa 1 222
aaa 2 111
bbb 2 222
你要的結(jié)果是什么?你對(duì)第一個(gè)去重,那么返回的結(jié)果應(yīng)該是兩行,aaa,bbb
可是后面兩個(gè)字段怎么顯示?所以應(yīng)該還是4行。
因?yàn)楹竺娴哪銢]有操作,那么個(gè)人認(rèn)為這個(gè)distinct相當(dāng)于沒有沒有起到任何作用。而且沒起到作用就要燒香了,萬一是反作用,也就是先distinct處理url字段,然后跟后面的組成笛卡兒積(個(gè)人猜測(cè),應(yīng)該不太可能),那么數(shù)據(jù)量就不好說了。
distinct應(yīng)該是自己?jiǎn)为?dú)出現(xiàn),類似于group by 后面的那個(gè)字段,你想想在 group by的語句中,如果要顯示其他字段,一般都需要聚合函數(shù),是差不多一個(gè)道理。
看你想要什么,如果僅僅要去重的urlchoose字段,那么把后面兩個(gè)字段從語句中去掉即可。
四、sql 怎么根據(jù)條件進(jìn)行去重
userId: user id
url: url visited by the user
SELECT userId, COUNT(DISTINCT url)
FROM tab
GROUP BY userId
ORDER BY COUNT(DISTINCT url) DESC
以上就是關(guān)于url去重相關(guān)問題的回答。希望能幫到你,如有更多相關(guān)問題,您也可以聯(lián)系我們的客服進(jìn)行咨詢,客服也會(huì)為您講解更多精彩的知識(shí)和內(nèi)容。
推薦閱讀:
nature雜志中文官網(wǎng)(世界三大權(quán)威科學(xué)雜志)
沈陽品質(zhì)品牌策劃怎么樣(沈陽品質(zhì)企業(yè)管理有限公司)