最新国产好看的视频,伊人天堂AV在线,国产Aaaaaa视频,蜜臀视频在线观看一区,人妻av色图,密臀久久久精品影片,青青视频免费观看毛片,久草在线观看视,国产三级精品色情在线

mysql使用left?join連接出現(xiàn)重復(fù)問(wèn)題的記錄

 更新時(shí)間:2023年03月23日 09:07:53   作者:Fighter168  
這篇文章主要介紹了mysql使用left?join連接出現(xiàn)重復(fù)問(wèn)題的記錄,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。如有錯(cuò)誤或未考慮完全的地方,望不吝賜教

mysql使用left join連接出現(xiàn)重復(fù)

問(wèn)題描述

在使用連接查詢的時(shí)候,例如以A表為主表,左連接B表,我們期望的是A表有多少條記錄,查詢結(jié)果就有多少條記錄,但是可能會(huì)出現(xiàn)這樣的結(jié)果,就是查詢出來(lái)的記錄總條數(shù),多余A表的記錄總條數(shù),并且是查詢的結(jié)果顯示出來(lái)時(shí)有部分列是重復(fù)的,簡(jiǎn)單的說(shuō),就是產(chǎn)生了笛卡爾積。

問(wèn)題示例

其中A表是用戶表(user),字段分別是:

ID name userid
1 aaaa 10001
2 bbbb 10002
3 ccccc 10003

B表是第一類(lèi)產(chǎn)品表(product),字段分別是:

ID title time userid
1 標(biāo)題1 2014-01-01 10002
2 標(biāo)題2 2014-01-01 10002
3 標(biāo)題3 2014-01-01 10001
4 標(biāo)題4 2018-03-20 10002
5 標(biāo)題5 2018-03-20 10003

這個(gè)時(shí)候我們使用下面sql 執(zhí)行的時(shí)候發(fā)現(xiàn)

selecct * from user left join product on user.userid=product.userid;

執(zhí)行結(jié)果竟然比user表的總數(shù)記錄多

問(wèn)題解決

其實(shí)這個(gè)問(wèn)題明眼人一眼就看出來(lái)了,因?yàn)閘eft join的關(guān)鍵字在product表不唯一,所以這部分不唯一的數(shù)據(jù)就產(chǎn)生了笛卡爾積,導(dǎo)致執(zhí)行結(jié)果多于預(yù)期結(jié)果。

解決的辦法就是采用唯一鍵去關(guān)聯(lián)做鏈接查詢就可以了

mysql使用left join時(shí),右表數(shù)據(jù)有重復(fù)數(shù)據(jù)

LEFT JOIN 關(guān)鍵字會(huì)從左表 (table_name1) 那里返回所有的行,即使在右表 (table_name2) 中沒(méi)有匹配的行。 此時(shí)右表 (table_name2)右表有通過(guò) on 關(guān)鍵字過(guò)濾后沒(méi)有數(shù)據(jù)或只有一條數(shù)據(jù)時(shí)是沒(méi)有問(wèn)題的。

我要說(shuō)的是如果右表 (table_name2)出現(xiàn)重復(fù)數(shù)據(jù)(業(yè)務(wù)上完全重復(fù))該怎么處理。

當(dāng)右表 (table_name2)通過(guò) on 關(guān)鍵字過(guò)濾后出現(xiàn)重復(fù)數(shù)據(jù),此時(shí)查出的數(shù)據(jù)就會(huì)是,右表數(shù)據(jù)*重復(fù)的數(shù)據(jù)+右表其他條件數(shù)據(jù),和我們所需數(shù)據(jù)的條數(shù)不同。

我的解決方法是,先根據(jù)過(guò)濾字段分組查詢一次右表 (table_name2),把相同的數(shù)據(jù)過(guò)濾掉,然后把這個(gè)結(jié)果當(dāng)成右表在進(jìn)行關(guān)聯(lián)

前面腦補(bǔ)?
LEFT JOIN (SELECT MODEL_CODE,MODEL_NAME from tm_model GROUP BY MODEL_CODE) tm on tav.model_code = tm.MODEL_CODE?
后面腦補(bǔ)

總結(jié)

以上為個(gè)人經(jīng)驗(yàn),希望能給大家一個(gè)參考,也希望大家多多支持腳本之家。

相關(guān)文章

  • 如何優(yōu)雅安全的備份MySQL數(shù)據(jù)

    如何優(yōu)雅安全的備份MySQL數(shù)據(jù)

    這篇文章主要介紹了如何優(yōu)雅安全的備份MySQL數(shù)據(jù)的相關(guān)資料,需要的朋友可以參考下
    2022-10-10
  • mysql5.7.17在win2008R2的64位系統(tǒng)安裝與配置實(shí)例

    mysql5.7.17在win2008R2的64位系統(tǒng)安裝與配置實(shí)例

    本篇文章主要給大家介紹了mysql5.7.17在win2008R2的64位系統(tǒng)安裝與配置實(shí)例,以及在配置過(guò)程中遇到的問(wèn)題解決辦法。
    2017-11-11
  • MySQL?source導(dǎo)入很慢的解決方法

    MySQL?source導(dǎo)入很慢的解決方法

    在mysql導(dǎo)入數(shù)據(jù)量非常大的sql文件的時(shí)候,速度會(huì)非常慢,這篇文章主要給大家介紹了關(guān)于MySQL?source導(dǎo)入很慢的解決方法,文中通過(guò)示例代碼介紹的非常詳細(xì),需要的朋友可以參考下
    2022-03-03
  • MySQL 數(shù)據(jù)庫(kù) ALTER命令講解

    MySQL 數(shù)據(jù)庫(kù) ALTER命令講解

    MySQL 為關(guān)系型數(shù)據(jù)庫(kù)(Relational Database Management System)。本文重點(diǎn)給大家介紹mysql數(shù)據(jù)庫(kù)alert命令講解,本文介紹的非常詳細(xì),具有參考借鑒價(jià)值,感興趣的朋友一起學(xué)習(xí)吧
    2016-05-05
  • Can't connect to MySQL server on localhost (10061)解決方法

    Can't connect to MySQL server 

    今天在安裝mysql后使用mysql命令連接mysql時(shí)報(bào)錯(cuò)?Can't connect to MySQL server on localhost (10061),一般是因?yàn)閙ysql服務(wù)沒(méi)有啟動(dòng)或者用戶名密碼不正確
    2011-03-03
  • mysql 5.7.13 安裝配置筆記(Mac os)

    mysql 5.7.13 安裝配置筆記(Mac os)

    這篇文章主要為大家詳細(xì)介紹了Mac os下mysql 5.7.13 安裝配置方法教程,感興趣的小伙伴們可以參考一下
    2016-06-06
  • MySQL5.7缺少my.ini文件的解決方法

    MySQL5.7缺少my.ini文件的解決方法

    my.ini是MySQL數(shù)據(jù)庫(kù)中使用的配置文件,修改這個(gè)文件可以達(dá)到更新配置的目的。這篇文章主要介紹了MySQL5.7缺少my.ini文件的解決方法,需要的朋友可以參考下
    2018-03-03
  • MySQL優(yōu)化之緩存優(yōu)化(續(xù))

    MySQL優(yōu)化之緩存優(yōu)化(續(xù))

    本文是MySQL優(yōu)化系列文章的第一篇緩存優(yōu)化的續(xù)篇,為大家更為詳細(xì)的介紹緩存優(yōu)化的方方面面,希望大家能夠喜歡
    2017-03-03
  • 數(shù)據(jù)結(jié)構(gòu)-樹(shù)(三):多路搜索樹(shù)B樹(shù)、B+樹(shù)

    數(shù)據(jù)結(jié)構(gòu)-樹(shù)(三):多路搜索樹(shù)B樹(shù)、B+樹(shù)

    這篇文章主要介紹了多路搜索樹(shù)B樹(shù)、B+樹(shù),文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來(lái)一起學(xué)習(xí)學(xué)習(xí)吧
    2019-04-04
  • MySQL實(shí)現(xiàn)批量推送數(shù)據(jù)到Mongo

    MySQL實(shí)現(xiàn)批量推送數(shù)據(jù)到Mongo

    這篇文章主要為大家詳細(xì)介紹了MySQL如何實(shí)現(xiàn)批量推送數(shù)據(jù)到Mongo,文中的示例代碼講解詳細(xì),具有一定的學(xué)習(xí)價(jià)值,感興趣的可以了解一下
    2023-05-05

最新評(píng)論

沂南县| 民丰县| 特克斯县| 南涧| 阳东县| 贵阳市| 汕头市| 景洪市| 五指山市| 丘北县| 若尔盖县| 来宾市| 西峡县| 青河县| 峨眉山市| 新野县| 社会| 龙里县| 盐边县| 舒兰市| 昌都县| 临泉县| 合江县| 英吉沙县| 东平县| 油尖旺区| 繁峙县| 建昌县| 黄山市| 修武县| 吉木萨尔县| 营口市| 玉环县| 临沧市| 九龙城区| 博乐市| 英山县| 玛曲县| 奉贤区| 芜湖市| 垣曲县|