MySQL MariaDB

MySQL Duplikált értékek keresése a táblázatban

MySQL Duplikált értékek keresése a táblázatban
A redundáns adatokat az adatbázis program tárolhatja a táblázatban, befolyásolva az adatbázis MySQL kimenetét. Az adatreplikáció azonban különböző célokra történik, és fontos feladat meghatározni a táblázatban szereplő duplikált értékeket, amikor MySQL adatbázissal foglalkoznak. Általánosságban elmondható, hogy okos egy táblázatra vonatkozó egyértelmű korlátozásokat alkalmazni, gyakran olyan információk tárolására, amelyek megakadályozzák a felesleges sorokat. Előfordulhat, hogy a MySQL adatbázisban szeretné kiszámítani az ismételt értékek számát. Ezzel a témával foglalkoztunk ezzel a kérdéssel, amelyben megtudhatja, hogyan lehet megkeresni az ismétlődő értékeket különböző módon, és hogyan lehet megszámolni az ismétlődő értékeket.

A kezdéshez telepítenie kell a MySQL-t a rendszerére a segédprogramokkal: MySQL munkaasztal és parancssori ügyfélhéj. Ezt követően meg kell adnia néhány adatot vagy értéket az adatbázis tábláiban, mint ismétlődő elemeket. Fedezzük fel ezt néhány példával. Először nyissa meg a parancssori ügyfélhéjat az asztali tálcán, és kérésre írja be MySQL jelszavát.

Különböző módszereket találtunk arra, hogy a táblázatban másolatot találjunk. Nézze meg őket egyenként.

Keresés duplikátumok egyetlen oszlopban

Először tudnia kell a lekérdezés szintaxisáról, amelyet egyetlen oszlop duplikátumainak ellenőrzéséhez és számolásához használnak.

>> KIVÁLASZTÁS oszlop szám (oszlop) FROM CSOPORT táblázatból oszlop HAVING COUNT (oszlop)> 1;

Itt van a fenti lekérdezés magyarázata:

Létrehoztunk egy új, „állatok” nevű táblázatot a MySQL adatbázis „adatai” között, amelyek duplikált értékekkel rendelkeznek. Hat oszlop van benne, különböző értékekkel, pl.g., azonosító, név, faj, nem, életkor és ár, amely információkat nyújt a különböző háziállatokról. Amikor ezt a táblát a SELECT lekérdezéssel hívjuk meg, megkapjuk az alábbi kimenetet a MySQL parancssori ügyfélhéjunkon.

>> SELECT * FROM adatok.állatok;

Most megpróbáljuk megtalálni a redundáns és megismételt értékeket a fenti táblázatból a SELECT és a COUNT lekérdezés COUNT és GROUP BY záradékának használatával. Ez a lekérdezés megszámolja azoknak a háziállatoknak a nevét, amelyek kevesebb mint háromszor találhatók a táblázatban. Ezt követően ezeket a neveket az alábbiak szerint jeleníti meg.

>> SELECT Name COUNT (Name) FROM adatokból.állatok CSOPORT NÉV SZERINT (Név) < 3;

Ugyanazt a lekérdezést használva különböző eredmények eléréséhez, miközben módosítja a háziállatok nevének COUNT számát az alábbiak szerint.

>> SELECT Name COUNT (Name) FROM adatokból.állatok CSOPORT NÉV SZERINT (Név)> 3;

Az alábbiak szerint összesen 3 ismétlődő érték elérése a Háziállatok neve számára.

>> SELECT Name COUNT (Name) FROM adatokból.állatok CSOPORT NÉV SZERINT (Név) = 3;

Ismétlődések keresése több oszlopban

A lekérdezés szintaxisa a több oszlop duplikátumainak ellenőrzéséhez vagy számításához a következő:

>> KIVÁLASZT col1, COUNT (col1), col2, COUNT (col2) táblázatból CSOPORTBAN col1, col2 HAVING COUNT (col1)> 1 ÉS COUNT (col2)> 1;

Itt van a fenti lekérdezés magyarázata:

Ugyanazt az "állatok" nevű táblázatot használtuk, amelynek duplikált értékei vannak. Az alábbi kimenetet kaptuk, miközben a fenti lekérdezést alkalmaztuk az ismétlődő értékek ellenőrzésére több oszlopban. Ellenőriztük és megszámoltuk a Nem és Ár oszlopok duplikált értékeit, miközben az Ár oszlopba csoportosítottuk. Megjeleníti a táblázatban szereplő kisállat-nemeket és azok árait, legfeljebb 5-ös duplikátumként.

>> SELECT Gender, COUNT (Gender), Price, COUNT (Price) FROM adatok.állatok CSOPORTBAN Ár szerint, ha számolunk (ár) < 5 AND  COUNT(Gender) < 5;

Ismétlődések keresése egyetlen táblában az INNER JOIN használatával

Itt található az alapvető szintaxis a duplikátumok egyetlen táblában történő megkereséséhez:

>> SELECT col1, col2, táblázat.oszlop TÁBLÁZATBÓL CSATLAKOZTATÁS (KIVÁLASZTÁS.col = temp.col;

Itt van a rezsikérdezés narratívája:

Van egy új táblánk, a 'order2', ismétlődő értékekkel a OrderNo oszlopban, az alábbiak szerint.

>> SELECT * FROM adatok.megrendelés2;

Három oszlopot választunk: Cikk, Értékesítés, Rendelési szám, hogy megjelenjen a kimenetben. Míg a OrderNo oszlopot használják az ismétlések ellenőrzésére. A belső összekapcsolás kiválasztja azokat az értékeket vagy sorokat, amelyekben az elemek értéke több, mint egy a táblázatban. A végrehajtás után az alábbiakban megkapjuk az eredményeket.

>> SELECT elem, értékesítés, megrendelés2.Rendelés Nincs adatból.order2 INNER JOIN (SELECT OrderNo FROM adatok.megrendelés2 CSOPORT Rendelés szerint Nincs szám (tétel)> 1) hőmérséklet BE megrendelés2.Rendelési szám = hőmérséklet.Rendelési szám;

Ismétlődések keresése több táblában az INNER JOIN használatával

Itt található az egyszerűsített szintaxis a duplikátumok több táblában történő megkeresésére:

>> Válasszon oszlopot az 1. táblázatból INNER JOIN 2. táblázat ON 1. táblázat.col = táblázat2.col;

Itt van a rezsi lekérdezés leírása:

Két táblánk van, a 'order1' és a 'order2', amelyek az alábbiak szerint tartalmazzák a 'OrderNo' oszlopot.

Az INNER csatlakozással két tábla másolatát egyesítjük egy megadott oszlop szerint. Az INNER JOIN klauzula az összes adatot megkapja mindkét táblából, ha összekapcsolja őket, és az ON záradék ugyanazokat a névoszlopokat fogja kapcsolni mindkét táblából, e.g., Rendelési szám.

>> SELECT * FROM adatok.rendelés1 INNER JOIN adatok.megrendelés2 ON megrendelés1.OrderNo = megrendelés2.Rendelési szám;

Ha meg szeretné kapni az adott oszlopokat egy kimenetben, próbálkozzon az alábbi paranccsal:

>> SELECT Region, Status, Item, Sales FROM adatok.rendelés1 INNER JOIN adatok.megrendelés2 ON megrendelés1.OrderNo = megrendelés2.Rendelési szám;

Következtetés

Most több példányt kereshetünk a MySQL információ egy vagy több táblázatában, és felismerhetjük a GROUP BY, COUNT és INNER JOIN funkciókat. Győződjön meg arról, hogy megfelelően készítette el a táblákat, és hogy a megfelelő oszlopokat választotta-e.

A Doom telepítése és lejátszása Linuxon
Bevezetés a Doom-ba A Doom sorozat a 90-es években keletkezett az eredeti Doom megjelenése után. Azonnali sláger volt, és ettől kezdve a játéksorozat ...
Vulkan Linux felhasználók számára
A grafikus kártyák minden új generációjával azt látjuk, hogy a játékfejlesztők átlépik a grafikus hűség határait, és egy lépéssel közelebb kerülnek a ...
OpenTTD vs Simutrans
Saját közlekedési szimuláció létrehozása szórakoztató, pihentető és rendkívül csábító lehet. Ezért meg kell győződnie arról, hogy a lehető legtöbb ját...