Ugyanazok a rekordok keresése a mysql-ben, webstories

Ugyanazok a rekordok keresése a mysql-ben, webstories
Néha az adatbázisban szükség lehet a duplikált bejegyzések számának megszámolására. Ezt a következőképpen teheti meg:

Elemezzük részletesebben ezt a kérést. Az 1. táblázatban azonos azonosítójú rekordokat kell azonosítanunk, ezért az 1. táblázatban feltétlenül be kell állítanunk a kiválasztást:

ami szó szerint azt jelenti, hogy "mindent kiválasztunk a table1-ből, ahol a mezőazonos azonos az értéktartománygal". Az utolsó IN szó azt jelenti, hogy a mezőazonosítónak nemcsak egy bizonyos értéknek kell lennie, hanem több olyan értéknek is, amely zárójelben van feltüntetve. A mi esetünkben az IN utasítás után zárójelben egy lekérdezés van megadva, amely minden duplikált azonosítót ad vissza.

Amint korábban említettük, ez a lekérdezés többször is megismételt id értékeket ad vissza. "Válasszon ki egy azonosítót a táblázat1-ből, csoportosítsa őket, és válassza ki azokat, akiknek száma a csoportosítás után nagyobb, mint 1". Van egy csoportosítás a mező idén, és csak számolni lehet a "csoportosított" id-shnikov számát, azaz azonos id számát. Mivel csoportokba történő egy mezőt - id, az összes azonos értékeket azonosító kerül csoportosítva egy, azaz például, már 3 aydishnika a értéke „1”, a másik 4 Haydee a „2” értékre, azaz összesen 7 aydishnikov . Az így kapott 3 aydishnika csoportosíthatók egy, és a másik 4 aydishnika a „2” értékre is vannak csoportosítva együtt, egy belépési, és ennek eredményeként kapjuk a következő két kategória aydishnika helyett 7 értékek „1” és „2”. Azzal, az üzemeltető és a függvény a count tudjuk számolni a csoportosított id-Schnick, és ha a szám a csoportosított id-Schnick 1-nél nagyobb, tartjuk őket a mintában (pl. E. figyelembe veszik azokat a IN operátor), például az al-lekérdezésből megtudtuk, hogy az azonosító-azonosító 1-es és 2-es. A fő lekérdezésben végül:

Előfordul, hogy olyan rekordokat kell találnia, amelyeket nem egyenként, hanem több mezőben ismételnek meg. Tegyük fel, hogy van egy információs tábla névvel és vezetéknévvel (név és vezetéknév), meg kell keresnünk a rekordokat két ismétlődő mezővel (név és vezetéknév). Ehhez a MySQL "CONCAT" operátor segít: